当前位置: 代码迷 >> ASP.NET >> Ajax步骤的执行顺序
  详细解决方案

Ajax步骤的执行顺序

热度:5618   发布时间:2013-02-25 00:00:00.0
Ajax方法的执行顺序
 
function fun1()
{
  $.ajax{} 
}

function fun2()
{
  $.ajax{.... success:function(msg){ fun1() }}; 

}

大致结构如上 我想当 fun2 中的方法每次调用 fun1() 的时候 先让fun1() 执行完毕后 在继续执行 
 有没有方法可以做到?

------解决方案--------------------------------------------------------
那就不要放在ajax中,
function fun2()
{
fun1() ;
$.ajax{.... success:function(msg){ }};

}

------解决方案--------------------------------------------------------
差不多吧
------解决方案--------------------------------------------------------
这种问题也拿来问,自己还是多想想吧
------解决方案--------------------------------------------------------
探讨

引用:
那就不要放在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
------解决方案--------------------------------------------------------
探讨

闻道有先后,术业有专攻。不知道就问,我前几天也问了这个问题http://topic.csdn.net/u/20100618/16/1164465b-51af-47f1-a713-a3d301b27e56

------解决方案--------------------------------------------------------
这个是异步的问题,

出现异步的字眼,,就要想到方法的执行是并行的,

简单理解同步代表是一个执行序列,是有顺序的,而异步是不用等上一操作执行完毕,就可以执行下一步操作

你的fun1 和 fun2

都是异步,具体怎么改,,应该知道吧?

把fun2 放在fun1 AJAX 成功回调方法里,才能保证执行fun2 前 先执行 fun1

如果改成async 这个属性,成同步的话,那要AJAX 何用...


------解决方案--------------------------------------------------------
初学者。顶下
------解决方案--------------------------------------------------------
顶一下
------解决方案--------------------------------------------------------
太赞成楼主的第二次发言了,现在就是有些这种人,以为自己学得很好,懂得挺多,其实呀都是装BI的
------解决方案--------------------------------------------------------
你说的不行是不能顺序执行还是什么不行啊?
------解决方案--------------------------------------------------------
探讨
不知道大家为什么对这个问题这么陌生,在发送请求的属性里面将async:false就行了啊,表明这不是异步方法,他就会等待执行完毕然后继续。


JScript code

function checkCode(code){
$.ajax({
url: '/admin/WebService1.asmx/CheckVerifyImage',
type: 'POS……

------解决方案--------------------------------------------------------
是啊,把导步去掉的话,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}
  相关解决方案