第一种

描述:如果条件许可,把两次请求都放在服务端处理掉一起发回来,这些就在客户端只有一次ajax了

优点:代码放在服务端,安全性比较,且服务端处理速度较快

缺点:可能请求的数据格式是json,这样在服务端处理JSON数据还需要对JSON进行反序列化,这样就比较麻烦

第二种

描述:是我第一次解决这个问题的时候用的比较蠢的办法,第一次请求的ajax,循环值PUSH到公共变量中去,然后用这个公共变量作为参数去请求第二个ajax

如何处理ajax中嵌套一个ajax
 1  $.ajax({
 2         cache: false,
 3         type: 'POST',
 4         url: url1,
 5         dataType: 'json',
 6         success: function (data) {
 7             var list="";
 8             //用,做隔断发回后台用split取值
 9             for(var i=0;i<data.length-1;i++)
10             {
11                  list+= data[i].id;
12                 if (i != data.length - 1) {
13                     list+= ",";
14                 }
15             }
16             
17              $.ajax({
18                 cache: false,
19                 type: 'POST',
20                 url:url2,
21                 data: { para: list},
22                 dataType: 'json',
23                 success: function(result) {
24                 .......
25                  }
26              })
27         }
28 })            
如何处理ajax中嵌套一个ajax

相关文章: