我有一個JQuery腳本,將表單字段的內容發佈到一個簡單的servlet。當我在表單字段中放置中文字符(在utf8中)並使用JQuery .ajax()方法發佈後,服務器將字符視爲問號(歡迎進入智慧的十年被看作是?????????? ?在服務器上)。JQuery發佈UTF8字符不起作用的內容
$.ajax({ url: '/url-on-server', type: 'POST', data: 'action=SEND&'+ $('#text-field').val()), success: function(){}, dataType: 'json' }
我曾考察與螢火蟲和Liveheaders的要求,他們看的權利...
Content-Type text/plain; charset=UTF-8
我相信當我更改HTML它不是一個服務器端的東西B/C表單發佈沒有JQuery腳本它很好。我可以在服務器端看到中文字符,而不用改變任何東西。
另一個線索..
當我使用JQuery $就()方法後的形式。這是該請求是什麼樣子的LiveHeaders ...
action=SEND&msg=%E6%AC%A2%E8%BF%8E%E8%BF%9B%E5%85%A5%E6%99%BA%E6%85%A7%E7%9A%84%E5%8D%81%E5%B9%B4
然而,當我發帖的形式傳統的web1.0的方式,這是我在現場看到標題。
action=SEND&msg=%26%2327426%3B%26%2336814%3B%26%2336827%3B%26%2320837%3B%26%2326234%3B%26%2324935%3B%26%2330340%3B%26%2321313%3B%26%2324180%3B
正如你可以看到它似乎編碼方式不同的參數,但我一直沒能到谷歌的解釋還是有辦法解決這個問題。
在此先感謝您的幫助。