0
<div>
    <span id="lbl" style="font-size: 20px; color: red"></span>
</div>

我写了以下ajax调用,

    for (var i = 0; i < 20; i++) {
        $.ajax({
            type: "POST",
            url: "WebForm1.aspx/CallMe",
            data: "{req: '" + i + "'}",
            contentType: "application/json; charset=utf-8",
            dataType: "json",                
            success: function (data) {
                $("#lbl").append(" " + data.d);                    
            }
        });
    }

在代码隐藏中设置了一个断点,如下所示 -

在此处输入图像描述

CallMe方法在循环中被调用二十次。当第一次调用时,我按F5,但在客户端没有获得值,其他几个F5点击但在客户端没有返回值。

允许代码后面的代码执行 5 次后,我obtain 4-5 values at once在客户端..

我尝试cache:false在 jQuery.ajax 中进行设置,但没有帮助..

任何建议都会非常有帮助!

4

1 回答 1

0

即使是 ajax 请求也是同步发送的,但响应可能不会按照发送的顺序返回。我的猜测是你想模拟一个同步的请求和响应,那么一种方法是在success块中嵌套 ajax 调用。

$.ajax{(
    data: 'req:1',
    success: {
        $.ajax{(
            data: 'req:2',
            success: {
                data: 'req:3',
                ...
            )}
     )}
)}
于 2013-09-22T07:19:40.667 回答