1. 程式人生 > >ASP.NET網站開發--AJAX(url,[settings])

ASP.NET網站開發--AJAX(url,[settings])

1、概述

通過 HTTP 請求載入遠端資料。

jQuery 底層 AJAX 實現。簡單易用的高層實現見 $.get, $.post 等。$.ajax() 返回其建立的 XMLHttpRequest 物件。大多數情況下你無需直接操作該函式,除非你需要操作不常用的選項,以獲得更多的靈活性。

最簡單的情況下,$.ajax()可以不帶任何引數直接使用。

注意:所有的選項都可以通過$.ajaxSetup()函式來全域性設定。

回撥函式:

如果要處理$.ajax()得到的資料,則需要使用回撥函式。beforeSend、error、dataFilter、success、等。

beforeSend 在傳送請求之前呼叫,並且傳入一個XMLHttpRequest作為引數。

error 在請求出錯時呼叫。傳入XMLHttpRequest物件,描述錯誤型別的字串以及一個異常物件(如果有的話)

dataFilter 在請求成功之後呼叫。傳入返回的資料以及"dataType"引數的值。並且必須返回新的資料(可能是處理過的)傳遞給success回撥函式。

success 當請求之後呼叫。傳入返回後的資料,以及包含成功程式碼的字串。

2、示例

1、載入並執行一個 JS 檔案。

jQuery 程式碼:

$.ajax({
  type: "GET",
  url: "test.js",
  dataType: "script"
});

2、儲存資料到伺服器,成功時顯示資訊。

jQuery 程式碼:

$.ajax({
   type: "POST",
   url: "some.php",
   data: "name=John&location=Boston",
   success: function(msg){
     alert( "Data Saved: " + msg );
   }
});

3、裝入一個 HTML 網頁最新版本。

jQuery 程式碼:

$.ajax({
  url: "test.html",
  cache: false,
  success: function(html){
    $("#results").append(html);
  }
});

4、同步載入資料。傳送請求時鎖住瀏覽器。需要鎖定使用者互動操作時使用同步方式。

jQuery 程式碼:

 var html = $.ajax({
  url: "some.php",
  async: false
 }).responseText;

5、傳送 XML 資料至伺服器。設定 processData 選項為 false,防止自動轉換資料格式。

jQuery 程式碼:

 var xmlDocument = [create xml document];
 $.ajax({
   url: "page.php",
   processData: false,
   data: xmlDocument,
   success: handleResponse
 });