Xhtml写URL,哪一个是正确的?

时间:2011-06-01 12:30:13

标签: javascript xhtml-1.0-strict

我需要在javascript中写一个url,但不知道我是否应该编写& for&符号

<script type="text/javascript">
<![CDATA[
 var link = 'http://example.com/query?id=1' . '&ref=' . document.referrer;
 ]]></script>

或者

<script type="text/javascript">
<![CDATA[
 var link = 'http://example.com/query?id=1' . '&amp;ref=' . document.referrer;
 ]]></script>

2 个答案:

答案 0 :(得分:4)

CDATA内,无需转义&,也不应在结果网址中转义,因此第一个是正确的。

答案 1 :(得分:2)

正确

<script type="text/javascript">
<![CDATA[
 var link = 'http://example.com/query?id=1' + '&ref=' + encodeURIComponent(document.referrer);
]]></script>

您不能在CDATA部分中使用XML转义字符。这就是首先使用它们的整个

但请注意您忘记的网址编码。 JavaScript字符串连接与+一起使用,而不是.