解决 jquery中的returnfalse不起作用 return false 无效

写了个表单验证js代码如下:

function CheckUserName(){
var username = $("#username").val();
$.get("b.php",{name:username},
function (data){
if(data == 1){
$("#warnning").html("<fontcolor=#FF3300>Account isused.</font>");
return false;//为啥不管用捏?
} else {
$("#warnning").html("<fontcolor=#00CC66>You canregister.</font>");
return true;//为啥不管用捏?
}
}
);
}

原因:逻辑没弄清楚,要将ajax设置为同步的,需要使用$.ajax,$.get默认是异步的,并且不是在回调函数内return,而是在CheckUserName函数中声明一个变量来接受回调函数的返回值,然后CheckUserName返回这个值。
修改后的代码:

  function CheckUserName(){
var username = $("#username").val();
var result=false;
$.ajax({async:false//要设置为同步的,要不CheckUserName的返回值永远为false
,url:'b.php',data:{name:username}
,success:function(data){
if(data == 1){
$("#warnning").html("<fontcolor=#FF3300>Account isused.</font>");
result=false;
} else {
$("#warnning").html("<fontcolor=#00CC66>You canregister.</font>");
【解决】jquery中的returnfalse不起作用 return false 无效
result=true;
}
}});
return result;//==========这里才是CheckUserName的返回值,回调函数返回值没有意义
}
OK! 测试一下,没问题了!

  

爱华网本文地址 » http://www.aihuau.com/a/25101010/38537.html

更多阅读

汽车的挡风玻璃起雾看不清的原因及解决办法 挡风玻璃起雾

有没有遇到过这样的情况呢?启动车子发现汽车的挡风玻璃起雾看不清路况,非常影响驾驶,下面告诉大家这个现象产生的原因和解决办法汽车的挡风玻璃起雾看不清的原因及解决办法——起雾的原因原因很简单,是由于车内和车外的温差,在挡风玻璃上

解决Word中的页码变成{PAGE * MERGEFORMAT} mergeformat

解决Word中的页码变成{PAGE * MERGEFORMAT}——简介在 Word 文件中的页码变成了 {PAGE * MERGEFORMAT},该如何恢复原有的页码?问题的发生原因您设定到了【显示功能变数代码代替数值】的功能,此选项可在文件中显示功能变数代码,而非功

股市中的信息不对称现象 股市28现象

股市中的信息不对称现象一、原理简述:信息不对称(asymmetricinformation)指交易中的各人拥有的信息不同。在社会政治、经济等活动中,一些成员拥有其他成员无法拥有的信息,由此造成信息的不对称。在市场经济活动中,各类人员对有关信息

声明:《解决 jquery中的returnfalse不起作用 return false 无效》为网友美丽的过错分享!如侵犯到您的合法权益请联系我们删除