get element by id为使用javascript动态添加的元素返回null 函数createInput(id){ 计数++; var name=“name”+计数; var text=“#”+id.id; var newInput=“”; var myTextArea=document.getElementById(id.id); myTextArea.innerHTML+=newInput; 返回false; }

get element by id为使用javascript动态添加的元素返回null 函数createInput(id){ 计数++; var name=“name”+计数; var text=“#”+id.id; var newInput=“”; var myTextArea=document.getElementById(id.id); myTextArea.innerHTML+=newInput; 返回false; },javascript,jquery,Javascript,Jquery,上面的函数将输入类型添加到代码中div的textarea中。动态显示输入类型后,我尝试使用getElementById获取其元素id,但它返回null。我能知道这里出了什么问题吗?似乎添加了新的输入类型,但不知何故,输入类型为null 另外,当我刷新页面时,我意识到新添加的输入类型消失了。有没有办法强制新的动态输入类型保留在页面中?动态创建的内容在页面上只是临时的。当页面刷新时,它将再次被删除。您应该在页面或上重新创建它(将信息存储在或中) 我尝试创建代码的工作示例: 单击矩形时,将向其添

上面的函数将输入类型添加到代码中div的textarea中。动态显示输入类型后,我尝试使用
getElementById
获取其元素id,但它返回null。我能知道这里出了什么问题吗?似乎添加了新的输入类型,但不知何故,输入类型为null


另外,当我刷新页面时,我意识到新添加的输入类型消失了。有没有办法强制新的动态输入类型保留在页面中?

动态创建的内容在页面上只是临时的。当页面刷新时,它将再次被删除。您应该在页面或上重新创建它(将信息存储在或中)

我尝试创建代码的工作示例:



单击矩形时,将向其添加输入。该按钮允许显示最后添加的元素


一切正常。我认为您的函数没有任何问题。

您如何调用该函数?
id
是一个具有
id
属性的对象吗?你能在试图访问elments的地方发布完整的代码吗?问题似乎并不完全清楚。你能不能创建一个工作示例作为旁注,如何准确地向textarea元素添加输入?id给出了textarea的id。
function createInput(id){

    count++;
    var name = "name" + count;

    var text = "#" + id.id;
    var newInput = "<input type='text' id='" + name + "' placeholder='' />";


    var myTextArea = document.getElementById(id.id);
    myTextArea.innerHTML += newInput;

    return false;
}
<div id="area1" onclick="createInput(this)" ></div>
<br/>
<div id="area2" onclick="createInput(this)"></div>
<input type="button" onclick="alert(document.getElementById('name' + count));alert(document.getElementById('name' + count).outerHTML)" value="Access Last Element" />