jquery.post( url, [ data ], [ success(data, textstatus, xmlhttprequest) ], [ datatype ] )
returns: xmlhttprequest
url 一個字串,其中包含的url,該請求被發送
data 地圖或字串,發送請求到伺服器
success(data, textstatus, xmlhttprequest)a callback 函數是執行,如果請求成功
datatype 預期的資料類型的伺服器
$.ajax({
type: 'post',
url: url,
data: data,
success: success
datatype: datatype
});
回呼函數成功返回的資料傳遞,這將是一個xml根項目或文本字串響應的mime類型而定。它也通過了響應文本狀態。
在jquery 1.4,成功回呼函數也是通過xmlhttprequest對象。
大多數實現將指定一個成功的處理常式:
$.post('ajax/test.html', function(data) {
$('.result').html(data);
});
這個例子擷取所請求的頁面上的html片段並將其插入。
牽強的頁面與post是不緩衝,因此緩衝和jquery.ajaxsetup ifmodified選項()沒有對這些要求的影響。
其他注意事項:
由於瀏覽器的安全限制,大多數"ajax"的要求,均採用相同的起源政策;請求不能成功地檢索資料從一個不同的域,子域或協議。
如果一個jquery.post()請求返回一個錯誤碼,它會靜靜的失敗,除非該指令碼還呼籲全球。ajaxerror()方法。
例子:
例如:請求test.php教程的網頁,但忽略了返回結果。
$.post("test.php");
例如:請求test.php的頁面並沿著一些額外的資料(同時還忽略返回結果)。
$.post("test.php", { name: "john", time: "2pm" } );
例如:資料數組傳遞到伺服器(同時還忽略了返回結果)。
$.post("test.php", { 'choices[]': ["jon", "susan"] });
例如:發送表單資料使用ajax請求
$.post("test.php", $("#testform").serialize());
如:alert從請求test.php的(html或xml,就什麼被退回而定)的結果。
$.post("test.php", function(data){
alert("data loaded: " + data);
});
例如:alert從同一個資料請求(html或xml,就什麼被退回而定)的額外載荷test.php的結果。
$.post("test.php", { name: "john", time: "2pm" },
function(data){
alert("data loaded: " + data);
});
例如:擷取test.php的網頁內容,存放在xmlhttpresponse對象,並適用於該process() 網頁特效函數。
$.post("test.php", { name: "john", time: "2pm" },
function(data){
process(data);
}, "xml");
例如:擷取test.php的頁面已在format ()
$.post("test.php", { "func": "getnameandtime" },
function(data){
alert(data.name); // john
console.log(data.time); // 2pm
}, "json");
個應用中的執行個體
$.ajax( {
type : "post",
url : "../das",
contenttype : "text/json",
datatype : 'json',
data : $.tojson($("form[name=dasform]").serializearray()),
success : function(msg) {}
);