深入理解ajax

2022-07-02 01:54:08 字數 2357 閱讀 4221

基礎練習

常用   for   in迴圈    for(var x in json)

var json = json.parse(str);       //

把字串解析成 json物件

var json = eval("(" + str + ")");   //

把括號內字元當**執行

var str1 = json.stringify(json);   //

將json轉換成字串

json.parse/eval():把它當成一段**來看,來執行或者可以把字串中的陣列轉換成真的陣列;在要執行的東西裡面加括號就會把它當成乙個物件來看(在解析json時)  例:eval("("+json+")");

ajax:讀取伺服器下的檔案

亂碼:由於html和檔案編碼不一致

作用:與伺服器做互動    在不重新整理介面的情況下更改頁面內容

非同步:ture  全部重新整理  有快取

同步: false  乙個乙個重新整理   (預設)

xmlhttprequest 物件如果要用於 ajax 的話,其 open() 方法的 async 引數必須設定為 true

post:不讓資料顯示出來   相對安全    資料量:基本無限制

*在ie下有時候會出現只有第一次讀取的值正常,後面的值都不正常,是因為ajax快取的問題

解決方法如下:

1、在服務端加 header("cache-control: no-cache, must-revalidate");(如php中)

2、在ajax傳送請求前加上 anyajaxobj.setrequestheader("if-modified-since","0");

3、在ajax傳送請求前加上 anyajaxobj.setrequestheader("cache-control","no-cache");

4、在 ajax 的 url 引數後加個隨機數 如 url=url+"&"+math.random();

5、第五種方法和第四種類似,在 url 引數後加上 "?timestamp=" + new date().gettime();

這樣每次請求的url都不一樣(ajax的快取便不起作用)確保每次載入的資料是最新的。

ajax

1

function

ajax(method, url, data, fn, fn2) else

1617

//2 連線伺服器

1819 oajax.open(method, url + "?" + data, true

);20

21//

3 傳送

2223

if (method == "post") else

3233

//4 處理響應結果

3435 oajax.onreadystatechange = function

() else

5859}60

61}6263}64

65 }

ajax  傳網頁中資料 到後台 

防止使用者重複提交

對於ajax請求時使用者體驗的改善, -loading

beforesend()

complete()

深入理解AJAX響應資訊的處理

使用者的互動操作 interaction 驅動著web站點。理解如何處理響應資訊,特別是在使用新的互動操作形式 例如ajax 的時候,這一點非常重要的。kris hadloc解釋了ajax請求 響應過程的本質,你應該了解這些內容,更好地為使用者互動操作服務。請求和響應 ajax引擎分很多個方面,每個...

深入理解C語言 深入理解指標

關於指標,其是c語言的重點,c語言學的好壞,其實就是指標學的好壞。其實指標並不複雜,學習指標,要正確的理解指標。指標也是一種變數,占有記憶體空間,用來儲存記憶體位址 指標就是告訴編譯器,開闢4個位元組的儲存空間 32位系統 無論是幾級指標都是一樣的 p操作記憶體 在指標宣告時,號表示所宣告的變數為指...

mysql 索引深入理解 深入理解MySql的索引

為什麼索引能提高查詢速度 先從 mysql的基本儲存結構說起 mysql的基本儲存結構是頁 記錄都存在頁裡邊 各個資料頁可以組成乙個雙向鍊錶每個資料頁中的記錄又可以組成乙個單向鍊錶 每個資料頁都會為儲存在它裡邊兒的記錄生成乙個頁目錄,在通過主鍵查詢某條記錄的時候可以在頁目錄中使用二分法快速定位到對應...