Internet Explorer不会显示URL中的中文字符

use*_*449 9 url encoding utf-8

我正在努力要求从URL中显示(使可读的)字符.

  • 当我使用谷歌浏览器时,它会以中文显示参数 - 即使它们被编码为UTF-8.

  • 当我使用Mozilla Firefox时,它会以中文显示参数 - 即使它们被编码为UTF-8.

  • 当我使用Internet Explorer时,它显示以UTF-8编码的参数.

NB URL编码为UTF-8; 我知道,因为当我从其中三个中复制URL并将其粘贴到Notepad ++时,其中三个显示以下内容:

/%E6%89%93%E5%BC%80%E7%9B%AE%E5%BD%95 /%E7%9B%B8%E6%9C%BA /%E6%95%B0%E7%A0% 81%E7%9B%B8%E6%9C%BA /%E5%B0%8F%E5%9E%8B%E6%95%B0%E7%A0%81%E7%9B%B8%E6%9C%BA /的PowerShot-A480/p/1934793

可能是Mozilla Firefox和Google Chrome家伙有这样的改进,可以使编码的字符串可读,也许IE的人不支持吗?或者,有没有办法用IE激活它?

顺便说一句......转到视图>>编码>> Unicode(UTF-8)负责页面内部的文本,但不会对URL中的文本产生任何影响.

任何帮助将不胜感激!

Oli*_*ver 10

我写了一篇关于Internet Explorer的博客文章,没有显示非ASCII字符的解码版本,并使用IRI来解决问题.

截至今天,我们有以下情况:

  1. HTML5支持IRI,即支持Unicode字符的URI
  2. HTTP不支持IRI,但所有主流浏览器都负责将IRI转换为有效(编码)的URI以检索指定的资源(页面).
  3. IE支持锚标签属性中的IRI,href并在地址栏中正确显示它们,就像您手动输入URL(键盘;-))一样.
  4. 如果您选择对IRI进行百分比编码,从而使其成为URI,则IE不会将该URI解码回IRI.

所以你可以尝试以下方法:

  1. 使用UTF-8保存HTML文件.这允许您在其中插入任何Unicode字符.
  2. 千万不能%的编码您的HTML网页里面的链接网址.只需使用这样的链接:<a href="http://zh.wikipedia.org/wiki/??????">??????</a>

关于该主题的精彩文章也可以在W3C:多语言Web地址简介中找到.