如何在打字稿中设置复选框属性

Posted

技术标签:

【中文标题】如何在打字稿中设置复选框属性【英文标题】:How to Set checkbox properties in typescript 【发布时间】:2017-09-15 00:29:18 【问题描述】:

我正在尝试获取表中复选框组的选中值。我有这样的情况

列出表中的所有记录,每一行都有一个复选框

<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);
    

但是打字稿抛出错误: 类型“HTMLElement”上不存在属性“checked”

如何切换表格中的复选框列表。有人可以帮忙吗!

【问题讨论】:

如果您只看到红色标记,那么我认为您可以忽略它,请参阅相同的问题/答案Here 【参考方案1】:

htmlElement 转换为具有checked 属性的HTMLInputElement

for (let item = 0; item < checkedItems.length; item++) 
    console.log((checkedItems[item] as HTMLInputElement).checked = true);

【讨论】:

谢谢!我做到了【参考方案2】:

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);
    

【讨论】:

以上是关于如何在打字稿中设置复选框属性的主要内容,如果未能解决你的问题,请参考以下文章

如何在打字稿中设置初始 React 状态?

如何在 Angular 10 中设置 Azure 媒体播放器打字稿定义

如何使用 Svelte 在 Storybook 中设置打字稿?

如何在页面加载时在反应打字稿中设置可见性

如何在 vba 中设置选中的属性(格式或控制工具箱)

在 React 中设置复选框“检查”属性