Javascript 表单验证消息未显示
我正在为我正在从事的一个项目开发一份登记表。该项目使用Bootstrap和jQuery来控制表单验证,我正在使用validate插件。这是使用C#在ASP.NET MVC 4 Web应用程序中设置的。我已正确配置了所有捆绑包和路由,但无法在表单上显示消息 表格如下:Javascript 表单验证消息未显示,javascript,jquery,twitter-bootstrap,jquery-validate,Javascript,Jquery,Twitter Bootstrap,Jquery Validate,我正在为我正在从事的一个项目开发一份登记表。该项目使用Bootstrap和jQuery来控制表单验证,我正在使用validate插件。这是使用C#在ASP.NET MVC 4 Web应用程序中设置的。我已正确配置了所有捆绑包和路由,但无法在表单上显示消息 表格如下: @{ ViewBag.Title=“Index”; Layout=“~/Views/Shared/_Layout.cshtml”; } 登记表 名字 姓 电子邮件 重新输入电子邮件 密码 再输密码 清楚的 提交 下面是JavaSc
@{
ViewBag.Title=“Index”;
Layout=“~/Views/Shared/_Layout.cshtml”;
}
登记表
名字
姓
电子邮件
重新输入电子邮件
密码
再输密码
清楚的
提交
下面是JavaScript:
$(document).ready(function () {
$('#formRegister').validate({
rules: {
textFirstName: {
required: true,
minlength: 1,
maxlength: 50
},
textLastName: {
required: false,
maxlength: 50
},
textEmail: {
required: true,
email: true
},
textEmail2: {
required: true,
email: true,
equalTo: '#textEmail'
},
passwordPW1: {
required: true,
minlength: 4
},
passwordPW2: {
required: true,
equalTo: '#passwordPW1'
}
},
messages: {
textFirstName: "The first name must be from 1 to 50 characters in length",
textLastName: "The last name must be from 0 to 50 characters in length",
textEmail: "Please enter a valid email address",
textEmail2: "Emails do not match",
passwordPW1: "The password must be from 4 to 50 characters in length",
passwordPW2: "Passwords do not match"
},
highlight: function(element){
$(element).closest('.form-control').removeClass('success').addClass('error');
},
success: function(element){
element.text('OK!').addClass('valid')
.closest('.form-control').removeClass('error').addClass('success');
},
submitHandler: function (form) {
form.submit();
}
});
});
像
消息
,突出显示
这样的属性不是规则的子属性
jQuery(函数($){
$('#formRegister')。验证({
规则:{
textFirstName:{
要求:正确,
最小长度:1,
最大长度:50
},
textLastName:{
必填项:false,
最大长度:50
},
文本电子邮件:{
要求:正确,
电子邮件:真的
},
文本电子邮件2:{
要求:正确,
电子邮件:是的,
equalTo:“#textmail”
},
密码pw1:{
要求:正确,
最小长度:4
},
密码pw2:{
要求:正确,
等号:“#密码pw1”
}
},
信息:{
textFirstName:“名字的长度必须为1到50个字符”,
textLastName:“姓氏长度必须介于0到50个字符之间”,
text电子邮件:“请输入有效的电子邮件地址”,
textEmail2:“电子邮件不匹配”,
passwordPW1:“密码长度必须为4到50个字符”,
passwordPW2:“密码不匹配”
},
亮点:功能(元素){
$(元素)。最近('.form group')。removeClass('success')。addClass('error');
},
成功:功能(元素){
element.text('OK!').addClass('valid')
.closest('.form group').removeClass('error').addClass('success');
},
submitHandler:函数(表单){
表单提交();
}
});
});代码>
登记表
名字
姓
电子邮件
重新输入电子邮件
密码
再输密码
清楚的
提交
您需要添加一个消息容器,以便在某处显示消息。
加:
容器:'#消息',
在反馈图标和
<div class="form-group">
<div id="messages"></div>
</div>
进行了更改并调整了上面的新代码,但仍然没有放置错误消息。我也把它改成了表单控制类。我不知所措,我甚至把你的代码复制到了我的上面,但我仍然无法让它工作。在JSFIDLE上,我注意到您使用了与我不同的jquery文件,这是因为我使用的是2.1.1和1.1.1,而您使用的是showing@JonRogers请参阅上面代码段中更新的演示。。它正在使用jquery 2.1.1,我的库中一定缺少一些内容。我正在使用Visual Studio 2012,我想这可能是我的NuGet软件包的一个问题。我确实添加了您在JSFIDLE上外部链接的各种文件,并将它们正确捆绑,但仍然没有成功。@JonRogers,您应该编辑您的问题以添加更多信息,而不是完全更改代码以反映答案。通过这样做,你已经使这个答案的一部分变得不连贯和不相关。