ajax非同步提交後出現卡死現象

2021-06-21 09:37:10 字數 783 閱讀 3460

本人是做電視節目站點開發,最近出現乙個問題,非同步提交後,頁面一直在緩衝,出現卡死現象,

在電腦測試一切正常,感覺很鬱悶,**什麼沒有問題,後發現是ajax問題。

ajax分為同步提交和非同步提交。以下是兩個方法區別。

非同步方法:

function

getjson2()  

}  }  

//alert(tmp); //沒有值

同步方法:

function

getjson2()  

//alert(tmp); //有值,成功,但是破壞了ajax非同步的初衷。

總結:對於一些資料的獲取,同步必須要等到伺服器的響應。如果是非同步(true),返回值是null,因為程式執行完send後不等xmlhttp的響應,而繼續執行下一條js語句,所以tmp還沒有來的及變化就已經返回null了。所以如果想獲得xmlhttp返回值必須用同步,非同步無法得到返回值。 這就是為什麼我在後面的操作一直取不到這個函式的返回值的緣故了。ajax的同步破壞了ajax非同步的初衷,除非忘不得已(比如需要對響應的資料進行進一步處理)才使用。

還有,同步非同步使用xmlhttp池時都要注意:取得xmlhttp時只能新建xmlhttp,不能從池中取出已用過的xmlhttp,(這種情況主要發生在需要迴圈的時候)因為被使用過的xmlhttp的readystate為4,所以同步非同步都會send但不執行onreadystatechange。

ajax非同步提交表單。

ajax非同步提交表單有幾種方法。1,不利用表單,通過拼接字串data 進行提交資料。此方法如果想 需要借助html5 filereader 把轉換成base64字串通過隱藏域傳值。這樣有把base64字串傳到後台,base64字串中的 會在提交的時候被轉義。可以吧base64字串進行加密再解密 2...

SUSE系統出現執行命令慢 卡死現象

在執行命令時,出現命令列反應慢,等很長時間才列印命令結果,甚至出現卡死現象。場景一 所有使用者執行命令慢 可能原因 1.var 目錄下小檔案過多,inode耗盡,導致定時任務程序大量掛死。檢查方法 執行df i 檢視inode占用情況 ps efl 檢視程序。執行df i 命令發現 var占用100...

tomcat配置的專案總是出現卡死的現象

在做乙個小型的練習專案的時候,使用了c3p0連線池。開始在用的時候總是點多次之後就開始卡死,總以為是c3p0的properties配置錯誤了,網上有很多類似的情況,我按照別人的情況設定了很久。結果還是不停的卡死。最後終於找到了,原因,寫的太馬虎了。在訪問mysql資料庫的時候,如果進行增刪改查往往在...