我犯了個錯誤不知道你發現了沒有?<script type="text/javascript">
$(document).ready(function() {
$("#aspnetForm").validate({
rules: {
<%= txtConfirmPassword.ClientID %>: {
equalTo: "#<%= txtPassword.ClientID %>"
}
},
messages: {
<%= txtConfirmPassword.ClientID %>: {
equalTo: 'Passwords donot match.'
}
}
});
});
</script>
查看HTML代碼:
<input name="ctl00$Content$txtPassword" type="password" id="ctl00_Content_txtPassword" />
<input name="ctl00$Content$txtConfirmPassword" type="password" id="ctl00_Content_txtConfirmPassword" />
ClientID對應id, UniqueID對應name,jQuery validate是使用name驗證。
正確的如下:
<script type="text/javascript">
$(document).ready(function() {
$("#aspnetForm").validate({
rules: {
<%= txtConfirmPassword.UniqueID %>: {
equalTo: "#<%= txtPassword.ClientID %>"
}
},
messages: {
<%= txtConfirmPassword.UniqueID %>: {
equalTo: 'Passwords donot match.'
}
}
});
});
</script>
為了調試,你可以先加個debug: true。