AJAX 多次調用,后面的會覆蓋前面的內容/數據


1.有的時候,同一個請求鏈接,需要傳遞不同的參數,發起多個請求。因此我采用了for循環。

1.1 此處是需要傳遞的參數

function behavioranalysisReqstue(type) {
  var typeStr = "newUsers"; switch (type){ case 1: typeStr = "newUsers";break; case 2: typeStr = "activeUsers";break; case 3: typeStr = "newUsersCount";break; case 4: typeStr = "activeUsersCount";break; case 5: typeStr = "orderVolume";break; case 6: typeStr = "userFollow";break; case 7: typeStr = "notActive";break; } return { "seachTime":seachTime, "startDate":startDate, "endDate":endDate, "type":typeStr, "index":type, } }

2.此處為AJAX請求,調用了傳遞參數的方法

 

 注意:o定義為常量,是因為AJAX是異步的,會導致AJAX里面switch不管是否執行完畢,都會取index的值。

其中根據behavioranalysisReqstue方法,返回的index值,調用不同的函數渲染頁面。

var isPopupMsg=true;
  for (var i = 1; i < 8; i++) { const o=behavioranalysisReqstue(i); $.post(DYD.U(behavioranalysisList1Url),o,function(data,textStatus){ layer.close(loading); var jsonData = DYD.toJson(data); if(jsonData.code==-1){ if (isPopupMsg) { isPopupMsg=false; layer.msg(jsonData.msg); } return; } switch (o.index){ case 1: //新增用戶數 $("#newAddUser").text(jsonData); break; case 2: //活躍用戶數 $("#dynamicUser").text(jsonData) break; case 3: //新增用戶統計  newAddUserData(jsonData); break; case 4: dynamic(jsonData); break; case 5: //成交量前十名客戶  userTopTen(jsonData.orderVolume); break; case 6: // 用戶關注點分析表格數據  focusCount_table(jsonData); break; case 7: //調用近期未活躍用戶排行表格數據  lazyUser_table(jsonData); break; } }); }


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM