1. 程式人生 > >ajax同步異步設置導致的問題及return返回值(返回ajax請求的數據)

ajax同步異步設置導致的問題及return返回值(返回ajax請求的數據)

() log inf 應該 頁面數據 spa mha soft add

一、ajax同步異步設置導致父子頁面數據更新不一致問題。

  1、在修復入宿退宿功能時,發現點擊退宿、入宿按鈕時。父頁面數據更新了但是子頁面數據要重新打開才能更新。如下圖:

    技術分享圖片

    因為數據刷新函數如下:父頁面刷新函數findRoomPeople()采用的是異步,所以,操作的數據還沒更新,子頁面刷新函數loadRoomInfo()就已經執行,所以獲取到的數據還是之前的數據。

    

<script>
    roomHandle: function () {
        /*刷新數據變化*/
        parent.cootoo_room.findRoomPeople();
        addPeople.loadRoomInfo();
        addPeople.currentPeopleID 
= {}; }, </script>

    修改為同步之後,子頁面函數就能及時獲取請求後的數據了。

二、return返回值返回ajax請求的數據。

  1、詳情可見https://blog.csdn.net/zyw23zyw23/article/details/77775730;

  2、大致就是設置一個全局變量,然後請求之後將數據賦值給全局變量,return的時候返回該全局變量。需要註意的是,return返回的不是ajax裏面的函數返回值,而應該是整個函數的返回值。

ajax同步異步設置導致的問題及return返回值(返回ajax請求的數據)