我试图在script标签内添加值,然后读取它并解析JavaScript中的值。我的HTML文件中有类似的内容。
<script type="text/plain" id="bound-bunny">
v -0.069188 0.091379 -0.013998
v -0.266134 0.287866 0.204836
v 0.150992 0.147769 0.133125
</script>
我想读取script标记中的值,并最终对其进行解析。
var me = document.getElementById('bound-bunny').innerHTML;
console.log(me);
我已经做了类似的事情,但是我得到的是无法读取null的属性“ innerHTML”,所以我不确定如何继续。
答案 0 :(得分:1)
您的代码很好,请确保在执行<script type="text/plain" id="bound-bunny">
之前加载document.getElementById('bound-bunny').innerHTML
,并执行
示例:
由于在#running-script
#bound-bunny
,因此本示例可以正常工作
<script type="text/plain" id="bound-bunny">
v -0.069188 0.091379 -0.013998
v -0.266134 0.287866 0.204836
v 0.150992 0.147769 0.133125
</script>
<script id="running-script">
var me = document.getElementById('bound-bunny').innerHTML;
console.log(me);
</script>
此示例将抛出与您相同的错误,因为在#running-script
#bound-bunny
<script id="running-script">
var me = document.getElementById('bound-bunny').innerHTML;
console.log(me);
</script>
<script type="text/plain" id="bound-bunny">
v -0.069188 0.091379 -0.013998
v -0.266134 0.287866 0.204836
v 0.150992 0.147769 0.133125
</script>
答案 1 :(得分:-1)
您可以解析标签中的变量。尽管称它为 script 标签是不合适的。
您也可以将脚本中的值作为有效的javscript变量:
<script type="text/javascript">
const vars = [
{-0.069188, 0.091379, -0.013998},
{-0.266134, 0.287866,0.204836},
{0.150992, 0.147769, 0.133125}
]
</script>
编辑:我想我可能会误解了,如果您只想读取值而不是将其实际解析为有效的JavaScript变量,那么您的代码就可以了。只需确保JavaScript代码在script标记中,该标记位于“ bound-bunny”标记之后。这样,您可以确保在访问值之前先加载带有值的标签。