【发布时间】:2020-01-21 23:16:19
【问题描述】:
我在获取动态创建的复选框的状态时遇到了一些麻烦。我使用下面的代码向正文添加了几个带有动态 ID 的复选框。
var html = ...;
for(var i = 0; i < options.checkTextArray.length; i++)
{
html +=
`
<label class="checkbox" [attr.for]="'myCheckboxId' + i">
<input class="checkbox__input" type="checkbox" [name]="'myCheckboxName' + i" [id]="'myCheckboxId' + i">
<div class="checkbox__box"></div>${options.checkTextArray[i]}:
</label>
<br>
`;
}
在代码的另一部分,我想获取和/或设置复选框的状态,但到目前为止还没有成功。我尝试使用下面的代码来实现我的目标,但“document.getElementById(...)”一直返回“null”。
var ckbStateBuffer = new Array();
var txtContenBuffer = new Array();
for(var i = 0; i < options.checkTextArray.length; i++) {
ckbStateBuffer.push(document.getElementById("'myCheckboxId' + i").checked);
}
如您所见,我想将复选框状态保存在一个数组中并使用它来将新状态重置为旧状态(例如按下按钮时)。
那么我应该如何将状态添加到这个缓冲区数组中?我在上面的代码中做错了什么?尝试了其他几种方法,但都没有奏效。
【问题讨论】:
标签: javascript html input dynamic getelementbyid