如果我搜索新创建的Element,则getElementById返回allways null

时间:2013-04-18 13:13:16

标签: javascript jquery getelementbyid

我想复制一个元素,然后分配给新的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_Einst”及其子元素。然后用户更改了combox的内容,然后我读取它们并将它们发送到服务器。后来我得到了答案。所以我调用GetelementById("newElementID"),但如果搜索新创建的元素,我总是为null。我该怎么办?

谢谢

马立克

2 个答案:

答案 0 :(得分:2)

正确的语法是:

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

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

您在哪里将元素添加到DOM?你能包含那些代码吗?

答案 1 :(得分:0)

您是否已将其添加到页面?

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

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

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