javascript - 从 javascript 外部文件无法从 HTML 文件获取 id 并替换内容

标签 javascript dom

HTML 代码:

<!DOCTYPE HTML>
    <html>
        <head>
        <meta charset="utf-8">
        <script src="index.js"></script>
        <title>Design All</title>
        </head>
    <body>
        <h2>------------------------</h2>
        <h1 id="test">Should this change?!</h1>
        <h2>------------------------</h2>
    </body>
</html>

外部 JavaScript 代码:

var product = "Camera";
var price = 130;
var introduction = document.getElementById("test");
introduction.innerHTML = product + " " + price;

注意: 1.如果我使用函数调用,它就可以工作。 2. 如果我在 HTML 文件中编写脚本,它也可以工作。 3.我使用了jsfiddle,它显示得很好。

谁能帮我解决这个问题吗?

最佳答案

我认为 HTML 尚未加载。在 body 上使用 onload 属性来确保 DOM 已加载:

<!DOCTYPE HTML>
<html>
    <head>
    <meta charset="utf-8">
    <script>
    var myFunction = function() {
      var product = "Camera";
      var price = 130;
      var introduction = document.getElementById("test");
      introduction.innerHTML = product + " " + price;
    }
    </script>
    <title>Design All</title>
    </head>
<body onload="myFunction()">
    <h2>------------------------</h2>
    <h1 id="test">Should this change?!</h1>
    <h2>------------------------</h2>
</body>

关于javascript - 从 javascript 外部文件无法从 HTML 文件获取 id 并替换内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38091505/

相关文章:

php - 确认警报不起作用

jquery - 获取 span id 并将其作为 href 附加到先前的 span

java - 将方法添加到 org.w3c.dom.Node

javascript - 更改 div 类 onclick --- 并*保存*更改

Javascript removeChild 不删除循环内的所有元素

javascript - 如何停止在 jQuery 中追加元素

javascript - 在 Internet Explorer 中运行本地 'Javascript Dependant' HTML 文件

javascript - Angular Js在 Controller 中过滤嵌套数组

java - 如何解析 javax.ws.rs.core.Response

javascript - select2 - 如何允许空值