Ajax jQuery同步回调成功

我有这个功能,使一个ajax调用。我在最后一段代码注释中描述了问题。

    function doop(){

var that = this;

var theold = "theold";

var thenew = "thenew";

$.ajax({

url: 'doop.php',

type: 'POST',

data: 'before=' + theold + '&after=' + thenew,

success: function(resp) {

if(resp == 1) {

$(that).siblings('.theold').html(thenew);

}

}

});

// I have some code here (out of the ajax) that **further** changes

// the .theold's html beyond what it was changed inside ajax success

// but the change depends on whether the resp (inside the success

// function) returned 1 or not, so this code out here depends on the ajax

// so it looks like I have to turn this ajax call into a sync ajax

return false;

}

根据代码注释中描述的问题,哪种更改最适合这种情况?

回答:

您需要为以下同步请求设置async:false:

function doop(){

var that = this;

var theold = $(this).siblings('.theold').html();

var thenew = $(this).siblings('.thenew').val();

$.ajax({

async: false,

url: 'doop.php',

type: 'POST',

data: 'before=' + theold + '&after=' + thenew,

success: function(resp) {

if(resp == 1) {

$(that).siblings('.theold').html(thenew);

}

}

});

// some other code

return false;

}

详情请看这里

以上是 Ajax jQuery同步回调成功 的全部内容, 来源链接: utcz.com/qa/411886.html

回到顶部