Chrome错误地解析了网址

时间:2013-07-10 09:37:32

标签: google-chrome

这就是我在div

下添加图片标签的方法
<img src='/files/images/remove.gif' border='0' " + 
               "  onClick='function(\"" + url + "\");' />";

当我在Firefox中打开我的页面时,一切正常,这里HTML在FF中生成

<div class="myclass"><img border="0" onclick="myfunction(&quot;http://127.0.0.1:8080/abc/attachments/1d28bc6b-f637-426f-8bca-e27f1c6f2ed9/debug.txt&quot;);" src="/files/images/remove.gif">&nbsp;
</div>

但在Chrome中,HTML会像这样生成

<div class="myclass"><img src="/files/images/remove.gif" border="0" onclick="myfunction(" http:="" 127.0.0.1:8080="" abc="" attachments="" 1d28bc6b-f637-426f-8bca-e27f1c6f2ed9="" debug.txt");"="">&nbsp;
</div>

查看网址,添加额外的引号和=符号。

任何人都可以帮我理解这里有什么问题,解决这个问题的方法/解决方案吗?

感谢。

2 个答案:

答案 0 :(得分:0)

嗯,首先,它看起来像是脚本中的一个错误,它会发出onclick的内容。但是,它也会出现在其他浏览器中..

但是,让我们从这个视图中尝试并假设它是代码中的错误,而不是Chrome。

JS代码或服务器生成onclick吗?如果在JS上,那么请向我们展示生成并设置onclick处理程序的代码,以确保它是正确的。

OTOH,如果它是在服务器上生成的(即PHP,ASP,Ruby,..),那么您是否尝试过窥视通过线路发送的确切内容?打开Chrome的DeveloperTools,转到“网络”并刷新页面。然后观察“响应”并检查其中嵌入的HTML代码是否正确。如果不正确,那么在服务器端脚本中查找错误。如果在响应中看到的HTML是正确的,那么它确实是浏览器。

如果是后一种情况 - HTMLInspector会将标记/链接显示为已损坏,这并不意味着它必须发生故障。 Inspector也只是一个软件,因此在解析/显示时可能会有一些错误 - 但HTML标记可能是正确的并且正常工作。我之前看到类似的错误显示有几次使用各种URL,但链接始终正常工作。尝试打开ChromeConsole并点击该onclick上的URL。您可能会得到正确的结果 - 在这种情况下,这只是演示文稿错误,点击/链接应该正常工作 - 所以忽略它或向Google报告错误。如果获取的URL不正确,我会对网络/响应中的HTML进行双重或三重检查,以确保其格式正确,然后我将其称为错误并尝试解决它 - 即通过设置它JS inload等。

答案 1 :(得分:0)

您使用的是一些不是纯HTML或JS的服务器基础架构,因此我们无法正常使用。你有onClick(看起来像.net),中间是+“”+,这不是纯HTML。

我在这里创建了一个复制:http://jsbin.com/ubacak/latest注意,我改变了你的代码,只是把它作为纯粹的js + html,一切都很好。