AJAX ----- 嵌套ajax 页面卡死的问题

 

问题:要一个AJAX中的回调函数中又进行了一个AJAX调用,并且这个AJAX是在一个循环调用的,不论设置async属性是true和false页面卡死。

解决方法:async属性都设为true,不用循环调用,用递归调用

第一层AJAX:

var currectNo = 0;
$.ajax({
                type: 'POST',
                url: '/ImportData/GetAllFiles',
            async: true,
            success: function (data) {
                datacount= data.length;
                impdatas(data, currectNo);                             
            },
            error: function (XMLHttpRequest, textStatus, errorThrown) {
                alert('加载失败!原因如下:' + errorThrown);
            }
            });
        });

第二层AJAX:

function impdatas(filearray,i)
    {
        $.ajax({
            type: 'POST',
            url: '/ImportData/importInterpData',
            data: 'fileFullPath=' + filearray[i],
            async: true,
            success: function (data) {
                if (i != datacount - 1) {
                 impdatas(filearray, currectNo++);
                }
            }
        });

 

posted @ 2017-08-25 16:21  爱生活,爱代码  阅读(635)  评论(0编辑  收藏  举报