我应该发布包含非英文字符的表单数据,例如'ü'。 accept-charset属性适用于Firefox和Chrome,但不适用于IE。所以我决定逃避所有非英文字符。例如,我用其HTML代码ü
替换了任何'ü'字符。
现在,当我在任何浏览器上发布表单时,代码ü
将替换为像'ü'这样的时髦字符串。为什么会发生这种情况,有没有办法在不改变的情况下发送表单值?
答案 0 :(得分:3)
你应该使用encodeUriComponent
。多数民众赞成。
在发布之前 - 使用JS函数
更改值(通过隐藏或精确值)encodeURIcomponent。
这将使你的chars => UTF8。
所以你提交它们不会有问题。
答案 1 :(得分:0)
使包含UTF-8编码格式的页面正确声明编码,并使服务器端表单处理程序处理UTF-8数据。
很难说你以前的尝试出了什么问题,但是专注于实施正确的方法更有建设性。使用UTF-8是确保用户输入的所有字符都能正确发送的唯一方法。