【发布时间】:2016-03-18 05:25:22
【问题描述】:
我正在使用这个 jQuery 验证插件,http://jqueryvalidation.org/ 我正在创建一个添加方法,如下所示。
jQuery.validator.addMethod('exists', function(value, element) {
$.ajax({
data: {username: value},
type: 'POST',
url: 'action/check/',
dataType: 'json',
success: function(data) {
if (data==true) {
console.log(data);
return true;
}
if (data==false) {
console.log(data);
return false;
}
}
})
}, 'This username is already in use');
我的控制台正在从检查脚本中获取正确的数据,在我的控制台中我可以看到真假等。但我不明白的是,无论输入是什么,验证标志似乎都会标记输入。
rules: {
password_confirm: {
equalTo: 'input[name=password]'
},
username: {
exists: true
}
}
我的数据库中已经有用户名chris,所以当我在用户名输入中输入chris 时,我应该得到一个重复用户的标志,但不管我得到的是什么类型的验证标志。
我错过了什么
【问题讨论】:
-
您不能从 ajax 方法返回值,因为您想使用现有的远程规则进行基于 ajax 的验证
标签: javascript jquery ajax validation