首页 文章

提交的字符编码 - _charset_隐藏字段

提问于
浏览
1

对于我们的Web应用程序,我们有多个包含文本区域的HTML页面 . 我们所有的页面都使用ISO-8859-1字符集进行渲染 . 当通过Windows机器上的IE6访问页面并将特殊字符(如“智能引用”)复制到文本区域时,我们的一些页面使用Windows 1252字符编码提交页面 . 在其他页面上,页面似乎使用UTF-8字符编码提交 . 我一直在使用以下隐藏字段跟踪提交字符编码:

<input type="hidden" name="_charset_" />

在Windows 1252提交字符编码页面上,我们收到“windows-1252”的值 .

在UTF-8提交字符编码页面上,我们收到一个空白值 .

在后端,我们使用的是ISO-8859-1 . 虽然理想情况下我们想要提交字符编码,但我没有看到在IE 6上强制该行为的选项 . 鉴于Windows 1252和UTF-8之间的选择,我更希望在Windows 1252中提交内容以便更有可能在ISO-8859-1中重新呈现页面时正确呈现 .

我已经深入研究了我们的页面,并且没有任何内容突然出现,因为有些页面以一种字符编码提交 .

1)当IE 6返回一个空白的字符集时,这实际上是等同于UTF-8吗?当提交字符编码为UTF-8时,或者仅当无法正确确定要使用的字符编码时,IE 6是否始终返回空白字符集?

2)导致IE 6在某些页面上选择Windows 1252而在其他页面上选择UTF-8的页面可能存在哪些差异?我在页面上扫描了UTF-8字符和任何accept-charset属性,但也找不到 .

附加说明:我在以下链接中找到了有关charset隐藏输入的信息 .

http://web.archive.org/web/20060427015200/ppewww.ph.gla.ac.uk/~flavell/charset/form-i18n.html

1 回答

  • 0

    MSDN声明IE仅接受“utf-8”作为此属性的值 .

相关问题