jquery ajax 返回值

functiongetcode(){$.ajax({type:"post",url:"/campus/shAdminInfo.do?method=shAdminInfoE... function getcode(){
$.ajax({
type:"post",
url:"/campus/shAdminInfo.do?method=shAdminInfoEmail&Email="+mail,
dataType:"json",
success:function(data){
if(data.Email=="false"){
$("#pwdspan").html("<img src='/campus/html/images/gou.gif'/>");
return true;
}
}
});
}
上面的函数中返回true,一般不用ajax直接掉用这个函数 是可以得到true的 用了ajax就得不到了 请问有什么方法能得到true这个返回值。
展开
 我来答
chen604xia
2010-07-14 · 超过12用户采纳过TA的回答
知道答主
回答量:36
采纳率:0%
帮助的人:18.8万
展开全部
楼上的说的对,ajax存在时间差
也就是说如果你在其它地方写
var r = getcode();
那么这个r是什么都得不到的,当你执行getcode这个方法时,它不会等你的ajax返回在执行下面的,ajax为异步请求,顾名思义它的请求时跟你的js同时执行的,所以要对ajax返回结果进行相应的操作都是写在它的回调函数里,即: success:function(data){...}里面,这样说你可能不太明白,举个例子
var re = 0;
function test(){
alert(re);//num1
re = testAjax();
alert(re);//num3
}
function testAjac(){
$.ajax({
type:"post",
url:"",
dataType:"json",
success:function(data){
re = 1
alert(re);//num2
}
});
}
上面执行alert的顺序肯定是num1,num3,num2,并且alert出来的值是0,0,1;
当然如果你的请求足够快(几乎不可能),快到比本页面还快,那么顺序就会是num1,num2,num3了
fireboyz2005
2010-07-07 · TA获得超过707个赞
知道小有建树答主
回答量:395
采纳率:0%
帮助的人:246万
展开全部
“用了ajax就得不到了”

能不能详细点呀?

我怀疑你的ajax写错。

$.ajax({
type:"post",
url:"/campus/shAdminInfo.do?method=shAdminInfoEmail&Email="+mail,
dataType:"json",
success:function(data){
if(data.Email=="false"){
$("#pwdspan").html("<img src='/campus/html/images/gou.gif'/>");
return true;
}
},
error:function(){
alert("error");
}
});

改成上面这个看看有没有弹出窗口?如果有就说明你的ajax有问题呢!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
goto999
2010-07-08 · TA获得超过172个赞
知道小有建树答主
回答量:131
采纳率:0%
帮助的人:51.2万
展开全部
ajax存在一个延时差异
你不要想getcode给你返回true,你需要的是
$("#pwdspan").html("<img src='/campus/html/images/gou.gif'/>");
//在此加入你的处理逻辑
return true;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友93e096e28
2010-07-07 · TA获得超过186个赞
知道答主
回答量:73
采纳率:0%
帮助的人:85.2万
展开全部
可以考虑用隐藏域 <input type="hidden"
在success 方法中 给隐藏域赋值,然后再获取
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2010-07-07
展开全部
你把function中的代码封装成另一个方法,在function中调用这个方法。你还可以定义一个全局变量,把返回值付给他
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式