我有一些嵌入在html文件中的javascript,如此
<html>
<head>
<script>
// and the script runs here
</script>
</head>
<body></body>
</html>
它有这样的一行
if((os == 'Mac')&&((br == 'Safari')||(br == 'Chrome')))
一切顺利(这意味着脚本有效),但the validator正在尖叫:
...字符“&amp;”是分隔符的第一个字符,但作为数据发生 ...此消息可能出现在以下几种情况中:
- 你试图包括“&lt;”页面中的字符:您应该将其作为“&lt;”发送 - 您使用未转义的&符号“&amp;”:这在某些情况下可能有效,但建议使用“&amp;”,这始终是安全的。
- 另一种可能性是您忘记关闭之前标记中的引号。
取代所有&amp;与&amp; amp。我怎样才能摆脱这个错误?
答案 0 :(得分:5)
如果您使用的是XHTML,则需要将内联脚本包含在CDATA section中:
<script type="text/javascript">
// <![CDATA[
document.write("&");
// ]]>
</script>
进一步阅读: