Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/390.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript按id获取元素_Javascript - Fatal编程技术网

Javascript按id获取元素

Javascript按id获取元素,javascript,Javascript,My HTML包含以下代码: <div id="msg"></div> 但当我在函数中调用时: msg.innerHTML = "test"; 它返回一个错误,指出msg为空。我该怎么办? 首先,你必须考虑JavaScript是区分大小写的语言,所以你应该使用 GETelEnMyBID(注释最后一个字母的情况)。接下来,如果按id获取元素,则应将id作为参数传递(而不是标记名): 有关此方法的更多信息,请参见MDN: 另外,一个重要的注意事项是在标记完全加载时使

My HTML包含以下代码:

<div id="msg"></div>
但当我在函数中调用时:

msg.innerHTML = "test";

它返回一个错误,指出
msg
为空。我该怎么办?

首先,你必须考虑JavaScript是区分大小写的语言,所以你应该使用<代码> GETelEnMyBID(注释最后一个字母的情况)。接下来,如果按id获取元素,则应将id作为参数传递(而不是标记名):

有关此方法的更多信息,请参见MDN


另外,一个重要的注意事项是在标记完全加载时使用此代码,即当
msg
元素对JavaScript“可见”时。为了实现这一点,一个选项是将
标记(以及相应的JavaScript代码)放在HTML末尾
之前,因为您是在页面加载元素之前调用它的。您需要等待或引用元素

在标题部分,我有:

var msg = document.getElementByID("msg");
var msg = document.getElementByID("div");
有三个问题:

  • 如果该代码位于
    头部
    ,但元素在
    正文
    中定义,则运行代码时该元素尚不存在

  • 元素的
    id
    “msg”
    ,而不是
    div
    div
    是它的标记名,不是唯一的

  • 它是
    getElementById
    ,而不是
    getElementById


  • 如果您将包含代码的脚本元素移动到页面上关闭标记之前,并使用
    document.getElementById(“msg”)
    ,您应该没事。

    是的,对不起,这是我的错误,getElementById将msg作为参数,我将“ID”固定为“ID”,但仍然没有working@DarioPanada它是
    Id
    ,不是
    id
    Hm,那么我该怎么做呢?你看链接了吗?这里有一些例子。不要全局地将元素存储在
    msg
    中-在需要时获取它,然后对其进行操作…否则就不要使用它。因此,在函数中,使用行
    var msg=…
    ,然后操作
    innerHTML
    var msg = document.getElementByID("div");