jQuery get() 和 post() 方法用于通過(guò) HTTP GET 或 POST 請(qǐng)求從服務(wù)器請(qǐng)求數(shù)據(jù)。
兩種在客戶端和服務(wù)器端進(jìn)行請(qǐng)求-響應(yīng)的常用方法是:GET 和 POST。
• GET - 從指定的資源請(qǐng)求數(shù)據(jù)
• POST - 向指定的資源提交要處理的數(shù)據(jù)
GET 基本上用于從服務(wù)器獲得(取回)數(shù)據(jù)。注釋:GET 方法可能返回緩存數(shù)據(jù)。
POST 也可用于從服務(wù)器獲取數(shù)據(jù)。不過(guò),POST 方法不會(huì)緩存數(shù)據(jù),并且常用于連同請(qǐng)求一起發(fā)送數(shù)據(jù)。
如需學(xué)習(xí)更多有關(guān) GET 和 POST 以及兩方法差異的知識(shí),請(qǐng)閱讀我們的 HTTP 方法 - GET 對(duì)比 POST。
$.get() 方法通過(guò) HTTP GET 請(qǐng)求從服務(wù)器上請(qǐng)求數(shù)據(jù)。
語(yǔ)法:
$.get(URL,callback);
必需的 URL 參數(shù)規(guī)定您希望請(qǐng)求的 URL。
可選的 callback 參數(shù)是請(qǐng)求成功后所執(zhí)行的函數(shù)名。
下面的例子使用 $.get() 方法從服務(wù)器上的一個(gè)文件中取回?cái)?shù)據(jù):
$("button").click(function(){
$.get("demo_test.php",function(data,status){
alert("數(shù)據(jù): " + data + "\n狀態(tài): " + status);
});
});
$.get() 的第一個(gè)參數(shù)是我們希望請(qǐng)求的 URL("demo_test.php")。
第二個(gè)參數(shù)是回調(diào)函數(shù)。第一個(gè)回調(diào)參數(shù)存有被請(qǐng)求頁(yè)面的內(nèi)容,第二個(gè)回調(diào)參數(shù)存有請(qǐng)求的狀態(tài)。
提示: 這個(gè) PHP 文件 ("demo_test.php") 類似這樣:
<?php
echo '這是個(gè)從PHP文件中讀取的數(shù)據(jù)。';
?>
jQuery $.post() 方法
$.post() 方法通過(guò) HTTP POST 請(qǐng)求向服務(wù)器提交數(shù)據(jù)。
語(yǔ)法:
$.post(URL,data,callback);
必需的 URL 參數(shù)規(guī)定您希望請(qǐng)求的 URL。
可選的 data 參數(shù)規(guī)定連同請(qǐng)求發(fā)送的數(shù)據(jù)。
可選的 callback 參數(shù)是請(qǐng)求成功后所執(zhí)行的函數(shù)名。
下面的例子使用 $.post() 連同請(qǐng)求一起發(fā)送數(shù)據(jù):
$("button").click(function(){
$.post("/try/ajax/demo_test_post.php",
{
name:"動(dòng)力節(jié)點(diǎn)",
url:"http://www.ilovecolors.com.cn
"
},
function(data,status){
alert("數(shù)據(jù): \n" + data + "\n狀態(tài): " + status);
});
});
$.post() 的第一個(gè)參數(shù)是我們希望請(qǐng)求的 URL ("demo_test_post.php")。
然后我們連同請(qǐng)求(name 和 url)一起發(fā)送數(shù)據(jù)。
"demo_test_post.php" 中的 PHP 腳本讀取這些參數(shù),對(duì)它們進(jìn)行處理,然后返回結(jié)果。
第三個(gè)參數(shù)是回調(diào)函數(shù)。第一個(gè)回調(diào)參數(shù)存有被請(qǐng)求頁(yè)面的內(nèi)容,而第二個(gè)參數(shù)存有請(qǐng)求的狀態(tài)。
提示: 這個(gè) PHP 文件 ("demo_test_post.php") 類似這樣:
<?php
$name = isset($_POST['name']) ? htmlspecialchars($_POST['name']) : '';
$url = isset($_POST['url']) ? htmlspecialchars($_POST['url']) : '';
echo '網(wǎng)站名: ' . $name;
echo "\n";
echo 'URL 地址: ' .$url;
?>