This section provides a tutorial example showing the issue of including 'script' tags in string literals in HTML document.
As we learned from the previous section, JavaScript codes must be included in "script" tags in HTML documents like:
<script ...> JavaScript code </script>. This put an extra restriction on the JavaScript code:
Never include </script> directly any where in your JavaScript code.
If you use </script> directly in your JavaScript code, it will cause the Web browser
or server to end your JavaScript code prematurely and cause execution errors. Here is a tutorial example
of including </script> directly:
<html>
<!-- Escape_Script_Tag.html
Copyright (c) 2008 by Dr. Herong Yang, http://www.herongyang.com/
-->
<head><title>Escaping Script Tags</title></head>
<body><pre>
<script type="text/javascript">
document.writeln("Qeustion: How to use the <script> tag?");
document.writeln("Answer: <script>...Script Code...</script>");
document.writeln("Rate this answer: 1 | 2 | 3 | 4 | 5");
</script>
</pre></body>
</html>
If you run this example script in a browser, you will get:
Surprised? Not really. Here is what happened when the browser processes this HTML document:
When the browser reaches the </script> tag included in the string literal in the document.writeln() statement,
it will end the JavaScript code.
The prematurely ended JavaScript code will not write anything to the HTML document, because the last statement is
incomplete.
The rest of the JavaScript code after the </script> will be processed as static text of the HTML document.
This is why it is displayed in the browser window.