如果搜索新创建的元素,getElementById总是返回null

getElementById returns allways null if i search for new created Element

本文关键字:getElementById null 返回 元素 新创建 搜索 创建 如果      更新时间:2023-09-26

我想复制一个元素,然后分配给新的id和名称。我的目标是以后再找到那个元素。下面是一个例子:

<div id="contDiv">
<div style="float:left"> filename </div>
<div style="margin-left: 323px"> playtime(in Sek.) </div>
<div id="tl_Einst" class="editor-field">
<select id="Medianames" onchange="change(this)" name="TL_Medianame">
<span class="field-validation-valid" data-valmsg-replace="true" data-valmsg-    for="Filename">    </span>
<select id="playtime" class="playtime" name="playtime" disabled="">
</div>
<input id="More" type="button" onclick="Addfiles()" value="+">
</div>  

在运行时复制元素" tl_int "和它的子元素。然后用户更改combox的内容,然后我读取它们并将它们发送到服务器。后来我得到了答案。所以我调用GetelementById("newElementID"),但我总是得到null,如果搜索新创建的元素。我能做什么?

谢谢

marek

正确的语法是:

var el = document.getElementById("newElementID");

通常,#用于JQuery或其他javascript框架,或者像下面提到的@Quention一样,也可以与document.querySelector一起使用。

在哪里添加元素到DOM?你能把代码也包括进去吗?

添加到页面了吗?

getElementByID只会在DOM中找到一个元素。您可以将其添加到页面中,也可以直接将其分配给一个变量。

var newElementID= document.createElement("p");

你现在可以在你的代码中找到newElementID,即使它不在页面中。