我在使用优秀的JQueryValidation插件时遇到了一些问题。
我已经阅读了一些类似的问题,与它们的共同点似乎是没有包含插件方法 - 但是,远程和类型方法是插件的核心,并不需要被包括在内。
另一个奇怪的细节是registerEmail字段通常在输入模糊时验证。
当你输入registerEmail字段时,它验证正常,但错误有时会显示,有时它不会。
单击“提交”按钮时,始终显示错误。
以下是我的相关代码:
HTML
<form id="registrationForm" action="dostep2.asp" method="get">
<input type="text" id="registerName" name="registerName" placeholder="Enter your Name." />
<input type="text" id="registerEmail" name="registerEmail" placeholder="Enter your Email Address." />
<button type="submit" name="submitButton1" value="submitButton1" class="btn btn-default btn-lg proceed">
</span>Proceed to <strong>Payment</strong> <span class="glyphicon glyphicon-circle-arrow-right">
</button>
</form>
的JavaScript
<script src="js/jquery.validate.min.js" type="text/javascript"></script>
<script type="text/javascript">
var validator = $("#registrationForm").validate({
debug: true,
rules: {
registerName: {
required: true
},
registerEmail: {
required: true,
email:true,
remote: "http://beta.mysite.com/Testmail.asp",
type: "get"
},
registerPassword: {
required: true
},
registerPasswordConfirm: {
required: true,
equalTo: "#registerPassword"
},
registerSub: {
required: true,
type: "get",
remote: "http://beta.mysite.com/testsub.asp"
}
},
messages : {
registerName: "Please type in your name.",
registerEmail: "Please type in your e-mail.",
registerPassword: "Please type in your password.",
registerPasswordConfirm: "Please confirm your password.",
registerSub: "Please type the subdomain you want to use."
}
});
</script>
提前致谢!
答案 0 :(得分:1)
引用OP :
“
remote
和type
方法位于插件的核心,不需要包含在内。”
不完全。 remote
是一种方法,但type
不是......
registerEmail: {
required: true,
email:true,
remote: "http://beta.mysite.com/Testmail.asp",
type: "get" // <- this is not a method or rule
},
type
是remote
的一个选项,因此内的 ...
registerEmail: {
required: true,
email: true,
remote: {
url: "http://beta.mysite.com/Testmail.asp",
type: "get" // <- this is an option of 'remote'
}
},
请参阅:http://jqueryvalidation.org/remote-method/
但是,由于type: "get"
已经是默认,您应该可以将其全部删除......
registerEmail: {
required: true,
email: true,
remote: "http://beta.mysite.com/Testmail.asp"
},