自学内容网 自学内容网

JS中for循环里的ajax请求不数据

问题:在for循环里调接口,调接口的请求方式用ajax的写法,发现每次循环都会跳过ajax,导致获取不到接口数据

问题解决:for循环是单线程的,是同步的。ajax是异步的。把ajax变成同步的就可以了:                 async: false

for(var i=0; i<contentList.length; i++){  
    urlString = contentList[i].url;  
    var requestParams = {
        'userId': window.params.userId,
        'sysId': window.params.sysId,
        'paramsObj': {
             'account': contentList[i].account,
         }
    }
    $.ajax({  
        type: 'post',  
        url: urlString,  
        dataType: JSON.stringify(requestParams),
        contentType: 'application/json',
        async: false, // 这个把异步的ajax变成同步
        success: function(res){  
            console.log(res,'res');  
        },  
        error: function(data){  
              
        }  
    });  
}  


原文地址:https://blog.csdn.net/qq_47305413/article/details/144723979

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!