之前是用jQuery的post()方法實現(xiàn)向服務器POST數(shù)據(jù)绍在,請求結束后還是在本頁面。
現(xiàn)在新需求是請求結束后需要跳轉到服務器返回的HTML頁面斗锭,這個類似于普通form提交后跳轉的過程地淀。
使用表單進行POST的方法
<form method="post" action="/B">
<input type="hidden" name="foo" value="bar">
<button type="submit">
</form>
點擊Submit 就可以向"/B"POST數(shù)據(jù)并跳轉到B頁面
Ajax方法
$.post("/B",{"foo":"bar"},function(){
window.location.href="/B";
})
這種方法能夠POST自定義數(shù)據(jù)但是雖然能夠手動跳轉到B頁面,但是并沒有辦法再傳一次參數(shù)給B頁面
所以可以用js 動態(tài)模擬一個form表單提交的操作
$.extend({
StandardPost:function(url,args){
var body = $(document.body),
form = $("<form method='post'></form>"),
input;
form.attr({"action":url});
$.each(args,function(key,value){
input = $("<input type='hidden'>");
input.attr({"name":key});
input.val(value);
form.append(input);
});
form.appendTo(document.body);
form.submit();
document.body.removeChild(form[0]);
}
});