一个AJAX发起多个请求

偏执的太偏执、 2023-06-14 15:58 139阅读 0赞

一个AJAX发起多个请求

有的时候,同一个请求链接,需要传递不同的参数,发起多个请求。因此我采用了for循环。

1.此处是需要传递的参数

  1. function behavioranalysisReqstue(type) {
  2. var typeStr = "newUsers";
  3. switch (type){
  4. case 1:
  5. typeStr = "newUsers";break;
  6. case 2:
  7. typeStr = "activeUsers";break;
  8. case 3:
  9. typeStr = "newUsersCount";break;
  10. case 4:
  11. typeStr = "activeUsersCount";break;
  12. case 5:
  13. typeStr = "orderVolume";break;
  14. case 6:
  15. typeStr = "userFollow";break;
  16. case 7:
  17. typeStr = "notActive";break;
  18. }
  19. return {
  20. "seachTime":seachTime,
  21. "startDate":startDate,
  22. "endDate":endDate,
  23. "type":typeStr,
  24. "index":type,
  25. }
  26. }

2.此处为AJAX请求,调用了传递参数的方法。
注意:变量o定义为了常量,是因为AJAX是异步的,会导致AJAX里面switch不管是否执行完毕,都会取index的值。
其中根据behavioranalysisReqstue方法,返回的index值,调用不同的函数渲染页面。

  1. var isPopupMsg=true;
  2. for (var i = 1; i < 8; i++) {
  3. const o=behavioranalysisReqstue(i);
  4. $.post(DYD.U(behavioranalysisList1Url),o,function(data,textStatus){
  5. layer.close(loading);
  6. var jsonData = DYD.toJson(data);
  7. if(jsonData.code==-1){
  8. if (isPopupMsg) {
  9. isPopupMsg=false;
  10. layer.msg(jsonData.msg);
  11. }
  12. return;
  13. }
  14. switch (o.index){
  15. case 1:
  16. //新增用户数
  17. $("#newAddUser").text(jsonData);
  18. break;
  19. case 2:
  20. //活跃用户数
  21. $("#dynamicUser").text(jsonData)
  22. break;
  23. case 3:
  24. //新增用户统计
  25. newAddUserData(jsonData);
  26. break;
  27. case 4:
  28. dynamic(jsonData);
  29. break;
  30. case 5:
  31. //成交量前十名客户
  32. userTopTen(jsonData.orderVolume);
  33. break;
  34. case 6:
  35. // 用户关注点分析表格数据
  36. focusCount_table(jsonData);
  37. break;
  38. case 7:
  39. //调用近期未活跃用户排行表格数据
  40. lazyUser_table(jsonData);
  41. break;
  42. }
  43. });
  44. }

发表评论

表情:
评论列表 (有 0 条评论,139人围观)

还没有评论,来说两句吧...

相关阅读

    相关 axios发起ajax请求,返回404

    使用axios发起ajax请求,如果接口命名执行了接口查询,但是去返回404,可以考虑跨域的问题, 我就是使用微信公众号登录,最初请求接口有端口,经过授权登录后,接口没了端口