我有一个小窗体内部的mvc 4中的部分视图。jQuery验证插件不显示验证消息
我无法触发jQuery内的验证。当我点击提交按钮时,没有验证消息弹出。
我的HTML
<form id="myform">
<table id="tblSegmentDetails">
<tr>
<td>
<input type="text" id="tbname" />
</td>
<td>
<input type="text" id="tbemail" />
</td>
<td>
<input type="text" id="tbphone" />
</td>
<td>
<input type="submit" value="Submit" />
</td>
</tr>
</table>
</form>
jQuery的
<script src="../../Scripts/jquery-1.7.1.min.js" type="text/javascript"></script>
<script src="../../Scripts/jquery.validate.min.js" type="text/javascript"></script>
<script type="text/javascript">
// $(document).ready(function() {
$("form[id='myform']").validate({
rules: {
tbname: {
required: true,
minlength: 2,
maxlength: 50
},
tbemail: {
required: true,
email: true,
minlength: 2,
maxlength: 50
},
tbphone: {
required: true,
phoneUS: true,
minlength: 9,
maxlength: 20
}
},
messages: {
name: {
required: "Please provide your name",
minlength: "Too few characters!",
maxlength: "Too many characters!"
},
email: {
required: "Please provide your email",
email: "Your email address must be in the format of [email protected]",
minlength: "Too few characters!",
maxlength: "Too many characters!"
},
phone_number: {
required: "Please provide your phone number",
phoneUS: "Please provide a valid US phone number",
minlength: "Too few characters!",
maxlength: "Too many characters!"
}
}
});
// });
</script>
当我点击提交按钮,没有验证信息弹出式。
这是做客户端验证的正确方法吗?我相信我不想在模型中添加data-annotation
。只是想做简单的客户端验证。
另一个问题是,如果我取消注释document.ready
然后我得到以下错误。
当我点击提交按钮时,没有验证消息弹出。
它不工作,因为你的投入要素的每一个丢失一个'name'属性。另外,在'rules'和'messages'选项中,输入只能通过它们的'name'属性来引用,这就是插件如何跟踪所有内容。 – Sparky 2014-09-03 19:15:28
我读过它可以用'id'或'name'完成 – user2322507 2014-09-03 19:31:44
你读错了。请参阅[文档](http://jqueryvalidation.org/reference/#markup-recommendations)。 'name'属性是强制性的。 – Sparky 2014-09-03 19:54:07