Xhtml写URL,哪一个是正确的?
我需要在 javascript 中写一个 url,但不知道是否应该写 &对于 &象征。
<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' . '&ref=' . document.referrer;
]]></script>
I need to write a url within a javascript, but do not know if I should write & for & symbol.
<script type="text/javascript">
<![CDATA[
var link = 'http://example.com/query?id=1' . '&ref=' . document.referrer;
]]></script>
Or
<script type="text/javascript">
<![CDATA[
var link = 'http://example.com/query?id=1' . '&ref=' . document.referrer;
]]></script>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
在
CDATA
内部,不需要转义&
并且它不应该在生成的 URL 中转义,因此第一个是正确的。Inside
CDATA
, there's no need to escape&
and it should not be escaped in the resulting URL, so the first one is correct.正确的做法是
You can not not 在 CDATA 部分中对 XML 转义字符进行转义。这就是首先使用它们的全部要点。
但请注意您忘记的 URL 编码。 JavaScript 字符串连接适用于
+
,而不是.
。Correct would be
You must not XML-escape characters in CDATA sections. That's the whole point of using them in the first place.
But note the URL-encoding that you forgot. And JavaScript string concatenation works with
+
, not.
.