0

当我尝试执行此代码时:

索引.html:

<div id="mydiv">test</div>
<script type="text/javascript">
$('#mydiv').html('<script type="text/javascript" id="myscript" src="test.js"><\/script>');
</script>

测试.js:

alert(document.getElementById('myscript').src);

我有这个错误:

document.getElementById("myscript") is null

我想解决它,知道它"'<script type="text/javascript" id="myscript" src="test.js"></script>'"是通过 ajax 调用获得的,与其他内容混合,但我简化了示例的代码。

4

2 回答 2

1

您应该使用document.CreateElementanddocument.body.appendChild使您的脚本标签可用于 getElementById 。你可以检查这个问题

在你的情况下,它可能是

var scriptTag = document.createElement('script');

scriptTag.src = 'test.js';

document.getElementByID("mydiv").appendChild(scriptTag);
于 2012-10-30T20:08:52.737 回答
0

我认为必须先关闭标签,然后才能在其中查询。因此,您的test.js脚本将不得不等待片刻、DOM 就绪或 window.onload。

于 2012-10-30T20:15:23.327 回答