jquery1.4 教程二 ajax方法的改進

來源:互聯網
上載者:User

1 允許序列化嵌套的參數。
比如:{foo: ["bar", "baz"]} 將被序列化成foo[]=bar&foo[]=baz,而不是序列化成以前的foo=bar&foo=baz。

如果你想要使用舊的序列化方式,有三種設定方法: 複製代碼 代碼如下:jQuery.ajaxSettings.traditional = true;
jQuery.param( stuff, true );
$.ajax({ data: stuff, traditional: true });

2 自動檢測json和javascript的資料類型。
1.4後返回json或javascript可以不用設定dataType 了,將會根據application/json或application/x-javascript自動判斷類型。但後台返回的資料類型務必指定。

3支援添加html頭資訊。
$.ajax()新增一個屬性ifModified: true ,設定為true,可以有效利用瀏覽器緩衝(目前我還有試過其效果。)

4使用原生的JSON.parse,來解析json。
1.4會對ajax返回回來的json進行合法性驗證,錯誤的json格式將不予解析,比如{foo: "bar"}。

5 $.serialize()序列化表單時,現在可以序列化html5的表單元素。
……相當的與時俱進,html5我還沒認真看過…..

6 留意新增一個全新屬性Context,非常有用處
Context的出現真是太及時了,Context會簡化你的ajax請求。Context的作用是你可以自訂上下文,也就是指定ajax中回呼函數的this。來看代碼: 複製代碼 代碼如下:jQuery.ajax({
url: "test.html",
context: document.body,
success: function(){
jQuery(this).addClass("done");
}
});

代碼success回呼函數中的this將指向document.body

7 顯式設定content-type
在1.4以前,如果你沒有設定參數data,$.ajax()會忽略contentType 這個參數的值,1.4contentType在ajax請求時都要發送。

8 你可以指定JSONP的回呼函數名
9 預設不允許跨域請求

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.