window.location中的百分比编码

时间:2013-08-26 17:38:31

标签: javascript url window.location percent-encoding

当我使用window.location打开带有特殊字符的url时,它似乎对特殊字符进行百分比编码,然后打开URL。例如

var url = "http://gramfeed.com/instagram/tags/kühl";
window.location = url;

这将导致打开包含URL的页面:

http://gramfeed.com/instagram/tags/k%C3%BChl

而不是:

http://gramfeed.com/instagram/tags/kühl

如何在没有百分比编码字符的情况下正确打开网址

这是一个玩代码的jsfiddle: http://jsfiddle.net/krisrak/aSkMR/

1 个答案:

答案 0 :(得分:3)

我不相信问题出在windows.location和你的JavaScript上。问题在于gramfeed.com如何解释标签。在您的代码中尝试此操作:

var url = "https://www.google.com/search?q=kühl"
window.location = url;

看到特殊字符保持未转换状态。

现在尝试直接在浏览器地址栏中输入http://gramfeed.com/instagram/tags/kühl - 转换网址。