我正在对将在 URL 中传递的字符串进行编码(通过 GET)。但如果我使用escape
, encodeURI
or encodeURIComponent
, &
将被替换为%26amp%3B
,但我希望将其替换为%26
。我究竟做错了什么?
如果没有看到你的代码,除了在黑暗中刺伤之外很难回答。我猜你要传递给的字符串encodeURIComponent()
,这是正确的使用方法,来自访问的结果innerHTML
财产。解决方案是得到内部文本/文本内容属性值改为:
var str,
el = document.getElementById("myUrl");
if ("textContent" in el)
str = encodeURIComponent(el.textContent);
else
str = encodeURIComponent(el.innerText);
如果不是这种情况,您可以使用代替()替换 HTML 实体的方法:
encodeURIComponent(str.replace(/&/g, "&"));
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)