可能重复:
带有 src 和内容的脚本标签是什么意思?
如果我在 Google Docs 电子表格中发布图表,我会得到以下代码来访问图像:
<script type="text/javascript"
src="//ajax.googleapis.com/ajax/static/modules/gviz/1.0/chart.js">
{"dataSourceUrl":"//docs.google.com/spreadsheet/tq?
key=...&transpose=0&headers=1&range=A1%3AC72&gid=0&pub=1","options":{"vAxes":...}}
</script>
显然,javascript 程序将 ... 中的文本作为参数。
然而,在 HTML 定义(http://www.w3.org/TR/html4/interact/scripts.html)中:“如果 src 具有 URI 值,用户代理必须忽略元素的内容并通过 URI 检索脚本。”
(编辑:正如下面的评论中提到的,这已经被讨论并同意谷歌使用 DOM 来访问内容 - 这是不推荐的。)
但问题是:如何将参数转义为有效的 XHTML?谷歌似乎没有考虑到有人想在标签之间添加 CTYPE 定义。此代码不起作用:
<script type="text/javascript"
src="//ajax.googleapis.com/ajax/static/modules/gviz/1.0/chart.js">
<![CDATA[
{"dataSourceUrl":"//docs.google.com/spreadsheet/tq?
key=...&transpose=0&headers=1&range=A1%3AC72&gid=0&pub=1","options":{"vAxes":...}}
]]>
</script>