javascript - Angular 4只需在javascript中设置一个单选按钮

标签 javascript angular typescript radio-button checked

这必须很简单,但我不想使用 jQuery。
我需要设置一个特定的单选按钮控件。我有它的 ID,所以我尝试了:

let radiobutton = document.getElementById("Standard");
radiobutton.checked = true;

我在网上找到了类似上面的例子, 但 Typescript/Javascript 给了我错误消息: ““HTMLElement”类型上不存在“checked”属性”

有什么想法吗?

感谢您的帮助。

最佳答案

不要使用 document.getElementById,而是使用 @ViewChild 和模板变量。 这是一个例子:

HTML:

<input #checkbox1 type="checkbox" [checked]="true" (change)="onChange(1, checkbox1)"/>{{name1}}
<br>
<input #checkbox2 type="checkbox" (change)="onChange(2, checkbox2)"/>{{name2}}

typescript :

  name1 = 'Angular 2';
  name2 = 'Angular 4';

  @ViewChild("input1") input1;
  @ViewChild("input2") input2;

  ngOnInit(){
    this.input1.checked = true;
    console.log("Checkbox1 is checked -  ", this.input1.checked);
    console.log("Checkbox2 is checked -  ", this.input2.checked);

  }

  onChange(checkbox, item){
    console.log("Checkbox%d was checked", checkbox);
    console.log("Checkbox%d is checked -  ",checkbox, item.checked);

  }

<强> Stackblitz example

关于javascript - Angular 4只需在javascript中设置一个单选按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46350620/

相关文章:

javascript - 无法在继承的 ASP.Net RadioButtonList 上使用 Javascript 清除所选项目

javascript - 在 JS 中,在对象中添加数字无法按预期工作

javascript - Angular OnPush 更改检测传播到 ngFor 循环中的子组件

typescript - Angular 2 RC4 路由器提供商

javascript - Angular 2 将数据从组件发送到服务

javascript - Angular 运行 jquery $(document).ready

javascript - ES6 重打包属性?

c# - 如何使用 signalr 以 Angular 读取从 web api 发送的数据?

angular - 以 Angular 缩放和平移图表

reactjs - GitHub Primer React组件与Octions的结合使用