我想从ts(类型脚本)文件中获取复选框选中的值。为此,我有一个布尔变量,目的是使用此变量值显示和隐藏div,但我遇到了问题。请帮我解决这个问题,并给我正确的方法来解决这个问题。这是我的代码......
html代码
**checkbox code**abcde" class="form-check-input" id="abcde" value="1"
(change)="checked('abcde')"> abcde
显示和隐藏代码
*ngIf='shown'
ts文件
checked(value) {
let get_id = document.getElementById('abcde');
if (get_id.checked == true) {
this.shown = true
}
else if (get_id.checked == false)
this.shown = false;
}
当我运行服务时,我得到"财产'检查'类型' HTMLElement'"
上不存在提前致谢!
答案 0 :(得分:5)
在您的HTML中
<input #abcde type="checkbox" (change)="fun()" />
在您的组件中
import { Component, ViewChild, ElementRef } from '@angular/core';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent {
@ViewChild('abcde') abcde: ElementRef;
func(){
this.abcde.nativeElement.checked
}
}
答案 1 :(得分:4)
使用此:
const ele = document.getElementById("idOfElement") as HTMLInputElement;
ele.checked = false;
答案 2 :(得分:2)
//Typescript File (app.component.ts)
import { Component } from 'angular/core';
@Component({
selector: 'app-root',
template: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent {
public shown = false;
}
//Html Code (app.component.html)
<form #myForm='ngForm'>
<input type="checkbox" class="form-control"
#checkBox="ngModel"
[(ngModel)]="shown" name="checkBox">
</form>
<div *ngIf="shown">
<!---Your Code Here...--->
</div>
这里,这是基于复选框选择和取消选择来显示和隐藏div元素的方法之一。这里使用显示的变量进行双向绑定。
答案 3 :(得分:1)
只需转到您的nodemodules文件夹
\ node_modules \ typescript \ lib \ lib.dom.d.ts
文件名:lib.dom.d.ts
搜索“任何HTML元素”。一些元素直接实现此接口的行号。 6374(在我的节点模块中)
,然后在interface HTMLElement
中添加 checked: boolean;
还需要添加全局节点模块
按下控制键并快速修复声明属性 checked: boolean;