【问题标题】:document.getElementByID("test").innerHTML giving TypeError: 'undefined' is not a function (evaluating 'document.getElementByID("test")')document.getElementByID("test").innerHTML 给出 TypeError: 'undefined' is not a function (evalating 'document.getElementByID("test")')
【发布时间】:2013-11-30 11:01:54
【问题描述】:

我正在尝试使用 javascript 来设置 div 的内部 html,但由于某种原因,它不起作用。我发现其他人以前也遇到过这个问题,但是我在其他帖子中找到的解决方案都不起作用。我不明白怎么了。

这是我的测试函数:

function test(){
    document.getElementByID("test").innerHTML = "why won't you work";
    alert("hello");
}
window.onload = test;

调用该函数是因为如果 document.getElementByID 行被注释掉,警告框就会起作用。如果该行没有被注释,它就不起作用。我的控制台显示该行的错误:

TypeError: 'undefined' is not a function (evaluating 'document.getElementByID("test")')

当然,我的页面正文中有一个带有该 ID 的 div。

<div id="test"></div>

我在网上找到的所有内容都表明这应该有效。我迷路了。任何帮助将不胜感激。

【问题讨论】:

    标签: javascript html innerhtml getelementbyid


    【解决方案1】:

    这是document.getElementById 而不是document.getElementByID

    您现在可以使用本网站上的 firebug 或 chrome 开发工具进行测试,方法是:

    document.getElementById('hlogo').innerHTML='It works!'; // have a look at the logo
    

    【讨论】:

    • 天哪!我花了最后一个半小时研究这个。我可以发誓我看到有人使用 ID。这就是问题所在。非常感谢!
    • 如果你使用纯文本编辑器来编写 javascript,我建议你改用更好的东西,因为它可以让你避免出现这样的错别字。
    • 不,我使用 Windows。但现在应该不难找到人们使用的东西。
    • 错字让我们做的事情。
    【解决方案2】:

    JavaScript 区分大小写。编写 JavaScript 语句时,请密切注意大小写:

    函数getElementByIdgetElementbyID 不同。

    名为myVariable 的变量与MyVariable 不同。

    【讨论】:

      【解决方案3】:

      我遇到这个错误是因为我试图运行document.getElementById('donationContainer').innerHTML('&lt;div&gt;&lt;/div&gt;');

      代替:

      document.getElementById('donationContainer').innerHTML = '&lt;div&gt;&lt;/div&gt;';

      注意括号:使用...innerHTML = ... 而不是...innerHTML(...

      我希望这可以帮助其他人解决这个愚蠢的问题

      【讨论】:

        猜你喜欢
        • 2014-05-05
        • 2012-02-21
        • 2018-01-20
        • 1970-01-01
        • 2022-10-13
        • 2015-05-04
        • 1970-01-01
        • 2014-08-23
        • 2015-06-24
        相关资源
        最近更新 更多