【发布时间】:2010-10-08 15:06:02
【问题描述】:
我正在尝试执行以下操作: 我有一个通过 jQuery Validation Plugin 验证的表单。有一个字段有几个规则:
var validator = $("#myForm").validate({
rules: {
emailForRequest: {
required: true,
email: true,
remote: "'emailcheck.php"
}
} ,
...
现在,当其中一条规则被破坏时,更准确地说是远程规则,我想触发一些额外的代码。所以,如果远程规则返回一个错误并且它的错误标签出现在 emailForRequest 字段旁边,我需要一个在后台执行其他操作的回调。
简而言之:我可以查看哪个规则触发了错误,我的意思是按代码查看,然后附加一个额外函数的执行吗?
编辑 好的,多亏了 Liam 的回答和更好地阅读了我的手册:
rules: {
emailForRequest: {
required: true,
email: true,
remote: {
url: "'emailcheck.php" ,
type: "post" ,
complete: function(data){
if( data.responseText != "true" ) {
alert("Sorry mate, this email address was registered but never activated!");
}
}
}
}
} , ...
但还有一个问题。 emailcheck.php 脚本可以返回 3 个不同的结果,其中一个为真,另外两个与语言有关。因此,我想发送一个 json 对象作为响应,其中包含错误类型的 var(在所有语言中都相同)和带有消息的 var(已翻译)。因此,在我的完整功能中,我可以检查错误类型并据此做出响应。很简单,只是它会搞砸应该出现在我的字段旁边的验证标准错误,而我还没有找到解决方案。
【问题讨论】:
-
我也希望看到解决方案!
-
你能告诉我们你在哪里找到了高级说明,详细说明了 emailForRequest 选项等
-
嘿 Liam,当然,你让我走上了正确的道路!这是我找到说明的 URL:docs.jquery.com/Plugins/Validation
-
我的代码目前是:rules: { emailForRequest: { required: true, email: true, remote: { url: "emailcheck.php" , type: "post" , complete: function(data) {警报(数据);返回数据; } } } } ,... 但我有冲突让标准错误消息仍然出现。
-
你的 remote: {} 对象也应该有一个 error: function() 和一个 success: function() 能力,如果你可以去的话: error: function(code, message) { //work with message} 或 $.each(message) ... 仍然无法在手册中找到所有这些,是在特定的示例中吗?
标签: jquery validation jquery-plugins jquery-validate