假設I型重音字符,例如ASCII 233,成這樣的形式:
然後,我使用此代碼後。關鍵點,據我瞭解:網址編碼不可行與ASCII> 127,所以你必須誘導不同的內容類型。
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" dir="ltr" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<script type="text/javascript" src="../js/third_party/jquery.js"></script>
<script>
$(document).ready(function(){
$('#but').click(function(){
var fd = new FormData();
fd.append('params', $('#inp').val());
$.ajax({
url: 'http://my-server-address-here',
data: fd,
dataType: 'json',
processData: false,
contentType: false,
type: 'POST',
success: function(data){
alert(data);
}
});
});
});
</script>
</head>
<input id="inp"></input>
<button id="but">Submit</button>
</html>
問題是,鉻仍然似乎破壞了字符,如下所示。這是它甚至到達服務器端腳本之前,但是,從那裏輸出它顯示相同的問題。
我們輸出數據(例如服務器到瀏覽器),這種類型的所有未出現任何問題或特殊邏輯的時間,所以,我認爲它必須能夠讓我的「法國E」現身服務器端沒有任何特殊的翻譯或轉換,除了配置瀏覽器和請求正確,我認爲我沒有做到。任何意見讚賞。
爲什麼有兩個'contentType'鑰匙? –
嘗試'fd.append('params',encodeURIComponent($('#inp')。val()))' – mplungjan
@BradM,我的錯誤,但它不會影響結果。編輯爲僅顯示第二個/虛假值。 – GregT