我正在尝试获取表中复选框组的选中值。我有这样的情况
列出表中的所有记录,每行都有一个复选框
<td><input type="checkbox" value="{{my.id}}" /></td>
我在表格标题处有一个复选框,可以为所有表格复选框切换是/否
<th><input type="checkbox" id="checkAll" (click)="changeCheck()" [(ngModel)]="checkAllValue" /></th>
我在changeCheck()中的代码如下:
changeCheck(): void {
var checkedItems = jQuery("#tbPayments input[type='checkbox'][id!=checkAll]");
for (let item = 0; item < checkedItems.length; item++) {
console.log(checkedItems[item].checked = true);
}
}
但是打字稿抛出错误:
属性“ checked”在类型“ HTMLElement”上不存在
如何切换表格中的复选框列表。有人可以帮忙!
最佳答案
CheckedItems键入为可以从jQuery调用HTMLElement确定的最大类型的值。如果知道它是HTMLInputElement,则应将其强制转换为:
changeCheck(): void {
var checkedItems = jQuery("#tbPayments input[type='checkbox'][id!=checkAll]") as HTMLInputElement[];
for (let item = 0; item < checkedItems.length; item++) {
console.log(checkedItems[item].checked = true);
}
}