我試圖通過使用jQuery的AJAX函數覆蓋HTTP請求標頭內容。它看起來像這樣我不能更改HTTP請求標題使用jQuery的內容類型值
$.ajax({
type : "POST",
url : url,
data : data,
contentType: "application/x-www-form-urlencoded;charset=big5",
beforeSend: function(xhr) {
xhr.setRequestHeader("Accept-Charset","big5");
xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded;charset=big5");
},
success: function(rs) {
target.html(rs);
}
});
Content-Type頭默認爲「應用程序/ x-WWW窗體-urlencoded;字符集= UTF-8」,但它顯然我不能覆蓋它的價值,不管我用'contentType'或'beforeSend'方法。 任何人都可以給我提示,我該如何更改HTTP請求的內容類型值? 非常感謝。
btw,有什麼好的文檔可以研究JavaScript的XMLHttpRequest的編碼處理嗎?
請參閱http://stackoverflow.com/questions/1145588/cannot-properly-set-the-accept-http-header-with-jquery,這是一個重複的問題。 – 2009-10-30 05:23:48
@Jim:不是真的;其他Q關於Accept頭,而不是關於設置內容類型。 – 2011-05-07 22:37:11
從jQuery ajax文檔: 數據將始終使用UTF-8字符集傳輸到服務器;你必須在服務器端正確解碼。 http://api.jquery.com/jQuery.ajax/ – Bkress 2011-05-20 20:50:23