jQuery validate在Asp.Net WebForm中容易被犯的错误
我犯了个错误不知道你发现了没有?
<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" />
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。