我有一个功能可以切换 div 内输入字段的启用/禁用状态。该 div 具有唯一的 ID,并且该 div 包含具有相同类名的输入。
const el = document.getElementById('slice_' + slice).getElementsByClassName('shiftSlice');
for (let i = 0; i < el.length; i++) {
el[i].disabled = true;
}
当我尝试此操作时, typescript 告诉我 [ts] 属性“disabled”在“Element”类型上不存在。
我是否需要以某种方式强制转换此元素才能访问禁用的属性?
最佳答案
您需要告诉 TypeScript 这是一个输入元素:
const el = document.getElementById('slice_' + slice).getElementsByClassName('shiftSlice');
for (let i = 0; i < el.length; i++) {
(<HTMLInputElement>el[i]).disabled = true; // note the type assertion on the element
}
关于javascript - Typescript 禁用特定 ID 内具有类的所有元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45148286/