问题:在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){
-
- }
- });
- }
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |