【发布时间】:2017-08-11 02:38:15
【问题描述】:
我有以下 PHP 代码:
echo "<input type='image' src='myImage.png' onClick='javascript:location.href = \"index.php?p=1©=true\"' />";
如果我点击图片,Chrome 会重定向到 index.php?p=1&copy=true。但如果我在 Internet Explorer 11 中单击该图像,它会重定向到 index.php?p=1©=true。
Internet Explorer 似乎取代了 URL 中的 HTML 实体。
我尝试使用&amp; 而不是&,但我遇到了同样的问题:IE 将其替换为版权符号。
如何在我的网址中使用&amp;copy?
我知道一种可能的解决方案是将&amp;copy 替换为&whatever,但我必须更改我的孔系统。
还有其他人有同样的问题:
【问题讨论】:
-
“我尝试使用 & insted of &,但我遇到了同样的问题:IE 将其替换为版权符号。” 你能举个例子吗?因为这是正确的做法。请记住:属性值文本是 HTML 文本,因此会解析命名实体。
-
请注意,您不要在
onxyz属性上使用javascript:,仅在需要 URL 的地方使用。所以你不希望它在上面(不过它是无害的;JavaScript 引擎只是认为它是一个带标签的语句)。 -
@T.J.Crowder:你的
onclick='location.href = "index.php?p=1&amp;copy=true"'不起作用。 IE 11 将&amp;copy替换为©。 -
呃,复制了它:jsbin.com/dajihiwiwo
标签: javascript php html internet-explorer url