我有一個小窗體內部的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