大侠们好,我在用jquery的Ajax发现一个问题,就是在执行回调函数时,无法为变量bl赋值,我的意思是return bl,如果bl为true就提交,否则不提交,请各位大侠帮个忙!
function check(){
var bl = false;
$.post("loginAction",{username:name,password:psw},function(data){
var obj = eval('(' + data + ')');
var exist = obj["exist"];
if(exist=="yes"){
bl = true;
}else{
bl = false
alert("用户名或密码错误!");
}
},"html");
// 即使exist为yes,bl也依然为false,貌似在执行回调函数function(data)时,未吧值赋给bl
return bl;}
function check(){
var bl = false;
$.post("loginAction",{username:name,password:psw},function(data){
var obj = eval('(' + data + ')');
var exist = obj["exist"];
if(exist=="yes"){
bl = true;
}else{
bl = false
alert("用户名或密码错误!");
}
},"html");
// 即使exist为yes,bl也依然为false,貌似在执行回调函数function(data)时,未吧值赋给bl
return bl;}
解决方案 »
- 看完Head.First.Servlets.and.JSP之后。。。关于学struts的问题
- java 线程的wait和notify问题
- 求助No result defined for action
- struts中html:select的问题
- 我面临着抉择,需要你们的救助,我的前辈们,我的兄弟们!!
- struts中读xml文件时对xml文件有大小限制?
- 如何在struts 自带的文件当中查找帮助?
- 如何将一个自定义的XML文件POST到HTTP端(急)
- 一个有关axis http post非常困惑的问题
- 在java中如何读取Oracle中的大字段,并且这个大字段的数据对应的是多个字段,如何保证按照这个顺序一一读写到这些字段中
- 获得jdbc的结果集了,如何取值啊?
- 怎么把一个java project发布到 jboss或者是weblogic上
if(exist=="yes")语句没有执行吧...
if(exist=="yes"){
return true;
}else{
alert("用户名或密码错误!");
return false;
}
function check(callback){//callback提交函数
$.post("loginAction",{username:name,password:psw},function(data){
var obj = eval('(' + data + ')');
var exist = obj["exist"];
if(exist=="yes"){
if(typeof(callback)=='function'){
callback();
}
}else{
bl = false
alert("用户名或密码错误!");
}
},"html");
}
if(typeof(callback)=='function'){//这里少了个括号
函数里面异步请求成功后返回值是有问题的
如:var isTrue = check();//check();函数里面有异步请求
alert(isTrue);
这里的alert(isTrue)会是check函数里面异步请求成功后才返回的值吗? 如果过check里面的请求要2秒才能请求成功 alert(isTrue)不是要等2秒才执行? 答案是否定的