因此,我有一个页面,并尝试与用户输入的数据一起提交表单。

演示:http://jsfiddle.net/DerekL/Cck8Q/

但是,浏览器以UTF-8格式发送数据,而服务器要求它以Big5格式发送。基本上,这意味着

encodeURIComponent("電")    //"%E9%9B%BB"


这没有使用正确的字符集,因此应该使用正确的字符串

%B9q


无论如何,有没有“使”浏览器使用Big5发送数据? JavaScript转换确实是可能的,但最终会像this一样。

最佳答案

如果仅在HTML表单提交中寻找编码,而不在JS编码转换中寻找编码,则可以利用acceptaccept-charset属性(HTML4)和/或<form>属性(HTML5):

<form action="..." method="get" accept="BIG5" accept-charset="BIG5">


Online demo(已在XP on XP简体中文版上选中)。

MDN document about <form> attributes

09-26 10:52