JavaScript innerHTML不起作用

Nul*_*teя 23 javascript

这是一个非常简单的程序,输出应该是s和JavaScript,但我只是得到a.

<html>
    <head>
        <title></title>
        <script type="text/javascript">
          document.getElementById("ma").innerHTML="JavaScript";
        </script>
    </head>
    <body>
        <h1 id="ma">s</h1>
    </body>
</html>
Run Code Online (Sandbox Code Playgroud)

Sam*_*son 31

在您尝试设置值时,该元素不存在.<h1>在添加到DOM 之后,您需要调用它.

您可以将此<script>标记进一步向下移动,或将逻辑添加到应该在加载文档时调用的函数:

window.onload = function() {
    /* Add your logic here */
}
Run Code Online (Sandbox Code Playgroud)

演示:http://jsfiddle.net/Lr2Hm/

  • 还要确保没有错字。`.innerHTML` 有效,但 `.innerHtml` 无效。 (5认同)
  • 对我来说就像一个魅力。谢谢。 (2认同)

Som*_*ory 13

你有2个选择:

window.onload = function() {
  //your script here
}
Run Code Online (Sandbox Code Playgroud)

要么

<body>
    <h1 id="ma">s</h1>
    <script type='text/javascript'>
        //your script here
    </script>
</body>
Run Code Online (Sandbox Code Playgroud)


Der*_*會功夫 12

你必须等到DOM加载完毕.

window.onload = function(){
    document.getElementById("ma").innerHTML="JavaScript";
}
Run Code Online (Sandbox Code Playgroud)