我正在将 jQuery Validate 与 jQuery Mobile 结合用于移动应用程序。我多年来一直试图完成这项工作,但看不出有什么问题。本质上,表单提交时不会触发任何验证。
我已经回溯了很多,并从 http://jquery.bassistance.de/validate/demo/ 的示例页面复制了 jquery 和 validate.js 的版本。 。还是不行:(
<script type="text/javascript">
$.validator.setDefaults({
submitHandler: function() { alert("submitted!"); }
});
$().ready(function() {
// validate the comment form when it is submitted
//$("#commentForm").validate();
// validate signup form on keyup and submit
$("#signupForm").validate({
rules: {
username: {
required: true,
minlength: 2
},
password: {
required: true,
minlength: 5
},
password2: {
required: true,
minlength: 5,
equalTo: "#password"
},
email: {
required: true,
email: true
},
},
messages: {
username: {
required: "Please enter a username",
minlength: "Your username must consist of at least 2 characters"
},
password: {
required: "Please provide a password",
minlength: "Your password must be at least 5 characters long"
},
password2: {
required: "Please provide a password",
minlength: "Your password must be at least 5 characters long",
equalTo: "Please enter the same password as above"
},
email: "Please enter a valid email address"
}
});
</script>
表单正在 PHP 中初始化:
echo "<form id=\"signupForm\" action='".$_SERVER['PHP_SELF']."' method=\"post\">";
最佳答案
你的js代码似乎无效,这是有效的代码
$.validator.setDefaults({
submitHandler: function() { alert("submitted!"); }
});
$().ready(function() {
// validate the comment form when it is submitted
//$("#commentForm").validate();
// validate signup form on keyup and submit
$("#signupForm").validate({
rules: {
username: {
required: true,
minlength: 2
},
password: {
required: true,
minlength: 5
},
password2: {
required: true,
minlength: 5,
equalTo: "#password"
},
email: {
required: true,
email: true
}
},
messages: {
username: {
required: "Please enter a username",
minlength: "Your username must consist of at least 2 characters"
},
password: {
required: "Please provide a password",
minlength: "Your password must be at least 5 characters long"
},
password2: {
required: "Please provide a password",
minlength: "Your password must be at least 5 characters long",
equalTo: "Please enter the same password as above"
},
email: "Please enter a valid email address"
}
});});
关于jQuery 验证不验证表单,但不抛出错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5270815/