我有一个在for循环中创建新元素的function。例如,我希望数组中的每一项都有一个div。但是我需要创建的html div-tag的ID来触发另一个函数。这是我目前得到的:
function change() {
for (let i = 0; i <= 2; i++) {
let modal = document.createElement('div');
let a = '<div id="id'+i+'"> innerHTML </div>';
modal.innerHTML = a;
// document.getElementById(a.this.id).innerHTML = "get by id";
document.getElementById('test').appendChild(
modal
);
}
} <div class="test" id="test">test</div>
<button onclick="change()">Change</button>
我需要获取在onclick上创建的每个div的id。
我试着喜欢document.getElementById('id' + i).innerHTML = "do something";,但这不起作用。有人能解决我的问题吗?jQuery也是一种选择!
发布于 2020-07-27 23:08:48
只有在将元素添加到DOM之后,才能使用document.getElementById。
//...
document.getElementById('test').appendChild(modal);
document.getElementById('id' + i).innerHTML = "get by id";
//...https://stackoverflow.com/questions/63117833
复制相似问题