开发者

special characters in embedded javascript

开发者 https://www.devze.com 2022-12-20 22:54 出处:网络
I have some javascript that is embedded in the html file like this <html> <head> <script>

I have some javascript that is embedded in the html file like this

<html>
    <head>
        <script>
            // and the script runs here
        </script>
    </head>
    <body></body>
</html>

And it has a line like this

if((os == 'Mac')&&((br == 'Safari')||(br == 'Chrome')))

Everything goes OK (which means the script works), but the validator is screaming:

... character "&" is the first character of a delimiter but occurred as data

... This message may appear in several cases:

-You tried to include the "<" character in your page: you should escape it as "<"

-You used an unescaped ampersand "&": this may be valid in some contexts, but it is recommende开发者_JAVA百科d to use "&", which is always safe.

-Another possibility is that you forgot to close quotes in a previous tag.

It seems ridiculous to replace all & with &amp. How can I get rid of that error?


If you are using XHTML, you need to enclose your inline scripts within a CDATA section:

<script type="text/javascript">
// <![CDATA[
    document.write("&");
// ]]>
</script>

Further reading:

  • About.com: Javascript and XHTML
  • Codehouse.com: Making JavaScript Compatible with XHTML
  • Wikipedia: CDATA
0

精彩评论

暂无评论...
验证码 换一张
取 消