Javascript firefox如何在地址栏中编码url
当我使用firefox时,我发现它会对地址栏中的汉字进行编码,这使得解码变得困难 埃克塞马普: 在js代码中,我对url进行了编码:Javascript firefox如何在地址栏中编码url,javascript,firefox,encoding,Javascript,Firefox,Encoding,当我使用firefox时,我发现它会对地址栏中的汉字进行编码,这使得解码变得困难 埃克塞马普: 在js代码中,我对url进行了编码: location.href="http://xxx/query.html?type="+encodingURI('中文'); 然后在地址栏中,firefox向我显示: http://xxx/query.html?type=中文 但是,如果我在地址中输入“enter”键,这意味着重新加载此页面,则地址将更改为 http://xxx/query.html?type
location.href="http://xxx/query.html?type="+encodingURI('中文');
然后在地址栏中,firefox向我显示:
http://xxx/query.html?type=中文
但是,如果我在地址中输入“enter”键,这意味着重新加载此页面,则地址将更改为
http://xxx/query.html?type=%D6%D0%CE%C4
然后我无法解码“=%D6%D0%CE%C4”。因为无法使用
decodeURI('%D6%D0%CE%C4');
实际上,encodeURI(“中文")="%E4%B8%AD%E6%96%87“
我想知道firefox是怎么做的,以及如何解码参数?它使用标准的url编码,你需要确保你有正确的doctype来显示这些字符,否则你会得到不满意的结果。它使用标准的url编码,你需要确保你有正确的doctype来显示这些字符s、 否则你会得到不满意的结果。Firefox对我来说不是这样的。当我按enter键时,它没有在URL中编码这些字符 顺便说一下,
中文代码>是%E4%B8%AD%E6%96%87
encodeURIComponent("中文");
"%E4%B8%AD%E6%96%87"
decodeURIComponent("%E4%B8%AD%E6%96%87");
"中文"
例如:.Firefox对我来说不是这样的。当我按enter键时,它不会在URL中编码这些字符
顺便说一下,中文代码>是%E4%B8%AD%E6%96%87
encodeURIComponent("中文");
"%E4%B8%AD%E6%96%87"
decodeURIComponent("%E4%B8%AD%E6%96%87");
"中文"
例如:.这是一个已知的Firefox错误:我看到了,有没有办法重新爱上它?因为我们在Firefox 3.6中遇到了这个问题,而在Firefox 5+中没有遇到,但我们无法让访问者更新到6。@c69:我不同意。这个问题中描述的行为似乎根本不存在。@user954921:%D6%D0%CE%C4
是GB2312编码的g、 Firefox不会简单地将编码从UTF-8更改为GB2312。为了确保我在Firefox 3.6中使用GB2312编码对其进行了验证-按位置栏中的Enter键不会更改任何内容。您可能需要检查扩展名,可能其中一个正在执行此操作。顺便说一句,通过单击“重新加载”按钮并单击“重新加载”按钮可以重新加载页面这就是99.9%的用户会做的;)这是一个已知的Firefox bug:我看到了,有没有办法喜欢它?因为我们在firefox 3.6中遇到了这种情况,而在firefox 5+中没有,但是我们不能让访问者更新到6。@c69:我不同意。此问题中描述的行为似乎根本不存在。@user954921:%D6%D0%CE%C4
是GB2312编码。Firefox不会简单地将编码从UTF-8更改为GB2312。为了确定,我在Firefox3.6中使用GB2312编码在网页上验证了它——在位置栏中按Enter键不会改变任何东西。你可能想检查你的扩展,也许其中一个正在这样做。顺便说一句,通过单击“重新加载”按钮重新加载页面,99.9%的用户都会这样做;)您提到的函数是解码Firefox URL的正确函数您提到的函数是解码Firefox URL的正确函数