国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

循環調用Ajax,異步引起順序錯亂的問題

freecode / 1787人閱讀

摘要:在外層使用循環時再去調用就會導致順序錯亂。比如條數據順序正常是,現在執行順序可能是。一個是標題匹配內容會有問題,另外,展示的順序也會出錯。暫無相關信息結果值單位參考范圍無無無正常值范圍是遞歸函數,是變量。調用的內層的內容當然也是正確的。

在外層使用for循環時再去調用Ajax就會導致順序錯亂。

for(var i=0;i

比如6條數據順序正常是123456,現在執行順序可能是135246。這樣一來,比如你想外層的Ajax得到標題以后再在內層匹配相應內容就會出現錯亂。一個是標題匹配內容會有問題,另外,展示的順序也會出錯。

解決方案是使用遞歸,遞歸可以幫助你正確的順序去調用Ajax,在遞歸每一步的索引也是正確的。

function getResult(){

                                        if(currentIndex>=result.recentResult.length){ 

                                            return;

                                        }

                                        $.ajax({

                                            type:"POST",
                                            url: remoteIp + "i/people/checkresult/getTestDetail.do",
                                            data:{
                                                itemId:result.recentResult[currentIndex].itemId,
                                                type:"0",
                                                hospitalCode:"1",
                                                instrumentType:"",
                                                checkDate:result.recentResult[currentIndex].itemId.split("_")[1]
                                            },
                                            dataType:"json",
                                            beforeSend: function (XMLHttpRequest) {XMLHttpRequest.setRequestHeader("Authorization", decodeURIComponent(getCookie("token")).replace(/
|
|(
)|(u0085)|(u2028)|(u2029)/g, "").replace(" ", ""));},
                                            
                                            success:function(result1){
                                                currentIndex++;
                                                console.log(result.recentResult[t].itemName);
                                                console.log(result1);
                                                if(result1.detail.length==0){
                                                    jianyan+="

"+result.recentResult[t].itemName+"("+result.recentResult[t].itemId.split("_")[1]+")

暫無相關信息

"; }else{ jianyan="

"+result.recentResult[t].itemName+"("+result.recentResult[t].itemId.split("_")[1]+")

"; } for(var j=0;j"+result1.detail[j].reportValue+""; } jianyan+="
結果值單位參考范圍
"+result1.detail[j].unit+"正常值范圍:"+result1.detail[j].refRange+"



"; theResult.innerHTML += jianyan; jianyan=""; t++; getResult(); } }); }

getResult是遞歸函數,t是變量。這個函數外層還有一個Ajax。result就是外層的結果,result1是內層數據result.recentResult[t].itemName 按照遞歸以后的標題就是按順序進行的了。調用的內層Ajax的內容當然也是正確的。

參考:https://blog.csdn.net/yuan882...

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/75231.html

相關文章

  • 循環調用Ajax異步引起順序錯亂問題

    摘要:在外層使用循環時再去調用就會導致順序錯亂。比如條數據順序正常是,現在執行順序可能是。一個是標題匹配內容會有問題,另外,展示的順序也會出錯。暫無相關信息結果值單位參考范圍無無無正常值范圍是遞歸函數,是變量。調用的內層的內容當然也是正確的。 在外層使用for循環時再去調用Ajax就會導致順序錯亂。 for(var i=0;i=result.recentResult.length){ ...

    mo0n1andin 評論0 收藏0
  • 循環調用Ajax異步引起順序錯亂問題

    摘要:在外層使用循環時再去調用就會導致順序錯亂。比如條數據順序正常是,現在執行順序可能是。一個是標題匹配內容會有問題,另外,展示的順序也會出錯。暫無相關信息結果值單位參考范圍無無無正常值范圍是遞歸函數,是變量。調用的內層的內容當然也是正確的。 在外層使用for循環時再去調用Ajax就會導致順序錯亂。 for(var i=0;i=result.recentResult.length){ ...

    megatron 評論0 收藏0
  • JS—異步、回調、高階函數

    摘要:而是在調用發出后,被調用者通過狀態通知來通知調用者,或通過回調函數處理這個調用。請求程序發出請求,從服務器端獲取數據,并設置了回調函數。然后,瀏覽器會設置偵聽來自網絡的響應,拿到數據后,將該回調函數插入到事件循環。 并發與并行 并發是指兩個或多個事件鏈隨時間發展交替執行,以至于從更高的層次來看,就像是同時運行(但在任意時刻只處理一個事件) 并發的關鍵是你有處理多個任務的能力,不一定同...

    Dean 評論0 收藏0
  • JavaScript執行順序分析

    摘要:每個線程的任務執行順序都是先進先出在運行的環境中,有一個負責程序本身的運行,作為主線程另一個負責主線程與其他線程的通信,被稱為線程。主線程繼續執行我是第一主線程執行完畢,從線程讀取回調函數。 前言 上星期面試被問到了事件執行順序的問題,想起來之前看《深入淺出Node.js》時看到這一章就忽略了,這次來分析一下JavaScript的事件執行順序。廢話少說,正題開始。 單線程JavaScr...

    chnmagnus 評論0 收藏0
  • 【筆記】 你不知道JS讀書筆記——異步

    摘要:異步請求線程在在連接后是通過瀏覽器新開一個線程請求將檢測到狀態變更時,如果設置有回調函數,異步線程就產生狀態變更事件,將這個回調再放入事件循環隊列中。 基礎:瀏覽器 -- 多進程,每個tab頁獨立一個瀏覽器渲染進程(瀏覽器內核) 每個瀏覽器渲染進程是多線程的,主要包括:GUI渲染線程 JS引擎線程 也稱為JS內核,負責處理Javascript腳本程序。(例如V8引擎) JS引擎線程負...

    junnplus 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<