Javascript JQuery验证程序问题
我已经尝试修复这个bug一个多小时了,但是-绝对没有运气。我可能错过了一些简单的事情,或者只是我没有意识到其他的事情。无论如何,事情是这样的: 我正在尝试向我的验证器添加一个验证方法,这似乎会引起问题。这是我的密码:Javascript JQuery验证程序问题,javascript,jquery,validation,Javascript,Jquery,Validation,我已经尝试修复这个bug一个多小时了,但是-绝对没有运气。我可能错过了一些简单的事情,或者只是我没有意识到其他的事情。无论如何,事情是这样的: 我正在尝试向我的验证器添加一个验证方法,这似乎会引起问题。这是我的密码: jQuery.validator.addMethod("isGroupExist", function() { var result_value = true; $.post('/includes/script_files/isGroupExist.
jQuery.validator.addMethod("isGroupExist", function() {
var result_value = true;
$.post('/includes/script_files/isGroupExist.php', { authorized: true,
groupName: $('#groupName').val() }, function(returnedData) {
alert(returnedData);
if(returnedData=='true')
result_value = false;
else
result_value = true;
});
return result_value;
}, "Group Name already exists, please pick a different one."
);
请不要在意我是怎么写的,我只是尝试了几种方法来解决这个问题。无论如何,问题是“result_value”永远不会作为“false”返回,即使分配给它的变量等于“false”。它永远保持“真实”,而这显然是不应该的。我仔细检查了我的函数,一切正常,包括外部文件。”returnedData有时返回为“true”,有时返回为“false”,但尽管它有值,“result\u value”不会得到更新
有什么想法吗?看来我自己已经设法解决了这个问题,不过做了很多研究工作
$.validator.addMethod("isGroupExist",function(value,element){
var result = $.ajax({
url: "/includes/script_files/isGroupExist.php",
type: "POST",
async: false,
//data: "action=checkusername&username="+username,
data: "authorized=true&groupName="+value,
}).responseText;
return result==="good"?false:true;
},"Group Name already exists, please pick a different one.");
看起来returnedData是一个布尔值,您不应该检查它是否与字符串相等。returnedData是一个字符串。