0

我遇到了 javascript document.getElementByID 函数的问题。HTML 文件是:

...
<script 
   id="scriptID"
   type="text/javascript"
   src="http://external.script.com/file.js">
</script>
...

加载页面时,脚本已成功包含,但是从该文件执行表达式时(脚本在加载后自动执行):

... = document.getElementById('scriptID').src

脚本失败并显示“document.getElementById('scriptID') is null”的消息。谁能告诉我,如果标签是脚本标签本身,为什么它是空的?

谢谢任何回应。

编辑:
我不知道这是否相关,但页面的构建方式有点复杂。有一部分商品的页。当客户订购该产品时,AJAX 会加载一个带有“感谢订购”的 div,其中包含脚本。然后执行脚本。

4

1 回答 1

1

当您尝试获取脚本的 src 时,可能是您的 DOM 尚未准备好,

<script id="scriptID" type="text/javascript" src="http://external.script.com/file.js">
</script>

window.onload=function()
{
 alert( document.getElementById('scriptID').src);   
}

它的工作很好

于 2013-11-03T10:03:02.140 回答