function fun1()
{
$.ajax{}
}
function fun2()
{
$.ajax{.... success:function(msg){ fun1() }};
}
大致结构如上 我想当 fun2 中的方法每次调用 fun1() 的时候 先让fun1() 执行完毕后 在继续执行
有没有方法可以做到?
------解决方案--------------------------------------------------------
那就不要放在ajax中,
function fun2()
{
fun1() ;
$.ajax{.... success:function(msg){ }};
}
------解决方案--------------------------------------------------------
差不多吧
------解决方案--------------------------------------------------------
这种问题也拿来问,自己还是多想想吧
------解决方案--------------------------------------------------------
------解决方案--------------------------------------------------------
不知道大家为什么对这个问题这么陌生,在发送请求的属性里面将async:false就行了啊,表明这不是异步方法,他就会等待执行完毕然后继续。
- JScript code
function checkCode(code){ $.ajax({ url: '/admin/WebService1.asmx/CheckVerifyImage', type: 'POST', dataType:"xml", data:{code:code}, [color=#FF0000]async:false,[/color] success: function(msg){ isCodeRight=msg.text; }, error: function(x, e) { alert(x.responseText); return false; }});}
------解决方案--------------------------------------------------------
闻道有先后,术业有专攻。不知道就问,我前几天也问了这个问题http://topic.csdn.net/u/20100618/16/1164465b-51af-47f1-a713-a3d301b27e56
------解决方案--------------------------------------------------------
------解决方案--------------------------------------------------------
这个是异步的问题,
出现异步的字眼,,就要想到方法的执行是并行的,
简单理解同步代表是一个执行序列,是有顺序的,而异步是不用等上一操作执行完毕,就可以执行下一步操作
你的fun1 和 fun2
都是异步,具体怎么改,,应该知道吧?
把fun2 放在fun1 AJAX 成功回调方法里,才能保证执行fun2 前 先执行 fun1
如果改成async 这个属性,成同步的话,那要AJAX 何用...
------解决方案--------------------------------------------------------
初学者。顶下
------解决方案--------------------------------------------------------
顶一下
------解决方案--------------------------------------------------------
太赞成楼主的第二次发言了,现在就是有些这种人,以为自己学得很好,懂得挺多,其实呀都是装BI的
------解决方案--------------------------------------------------------
你说的不行是不能顺序执行还是什么不行啊?
------解决方案--------------------------------------------------------
------解决方案--------------------------------------------------------
是啊,把导步去掉的话,ajax也就没啥作用啦,这种问题确实很纠结
------解决方案--------------------------------------------------------
从你贴的代码来看,,两个AJAX 可以合并成一个
一步到位的返回RoleName不好吗?
------解决方案--------------------------------------------------------
要是我的话 把剩下要执行的代码再封装起来,等fun1执行完了,再去执行
- JScript code
function fun1(){ $.ajax{} }function fun2(){ $.ajax{.... success:function(msg){ fun1() }}; 语句块1}//--------改写成--------------------------------function fun1(){ $.ajax{.... success:function(msg){ fun3() }}; }function fun2(){ $.ajax{.... success:function(msg){ fun1() }}; }fun3(){ 语句块1}