设置复选框节点列表的选中状态



我有一个复选框的节点列表。如何将它们全部设置为检查?以下forEach不能作为the property checked does not exist on type element工作

let checkboxes = document.querySelectorAll('[id^="chkAddProposalProduct_"]');
checkboxes.forEach(c => { c.checked = true});

HTML

<input type="checkbox" id="chkAddProposalProduct_{{product.productId}}">

TypeScript无法知道checkboxes只包含<input type="checkbox">元素。您可以拥有ID以chkAddProposalProduct_开头的任何元素。因此,您需要告诉TypeScript编译器checkboxesHTMLInputElement对象的NodeList,如下所示:

let checkboxes = document.querySelectorAll('[id^="chkAddProposalProduct_"]') as NodeListOf<HTMLInputElement>;
checkboxes.forEach(c => { c.checked = true; });

最新更新