绑定单击并更改复选框角度2
Bind click and change checkbox angular2
我在使用angular2(beta 17)的复选框方面遇到了一个奇怪的问题。
我试图在元素具有数组时设置相同的复选框,并绑定更改或单击事件。
例如,我有一个数组:
myObjects=[
{value:true},
{value:true},
{value:false},
{value:true}
];
我正在使用ngFor创建所有复选框:
<div *ngFor="let myObject of myObjects; let i = index" >
<input
type="checkbox"
[checked]="myObject.value"
(change)="updateCheckedOptions(i, $event)"
/>
</div>
最后,我的组件中有一个函数:
@Input() myObjects;
updateCheckedOptions(index,event){
this.myObjects[index].value=event.target.checked;
}
但问题是复选框不会更改,我的意思是,当我单击复选框时,如果初始状态为选中状态,则始终保持选中状态,反之亦然。
我尝试过使用(click)、(change)、[(ngModel)],但都不起作用。
谢谢!
您可以检查ngModelChange:
//This is your component
@Input() myObjects;
myObjects=[
{value:true},
{value:true},
{value:false},
{value:true}
];
updateCheckedOptions(index,event){
this.myObjects[index].value=event.target.checked;
console.log(index + " ---- " + event);
}
<div *ngFor="let myObject of myObjects; let i = index" >
<input
type="checkbox"
[checked]="myObject.value"
(ngModelChange)="updateCheckedOptions(i, $event)"
/>
</div>
相关文章:
- 如何防止jQuery中复选框单击时执行多个代码
- 复选框单击功能不起作用
- 复选框单击覆盖表行单击
- 如果父项具有onclick绑定,则复选框单击将被忽略
- 在数据网格中的复选框单击时使用 Databinder.Eval
- 切换复选框 - 单击父 DIV 元素
- 如何调用文本框代码隐藏文本更改事件从复选框单击位于网格视图行内
- 在复选框单击时清理我的jQuery代码
- 复选框单击事件处理程序和显示/隐藏功能
- 保留 Google 地图在复选框单击时缩放到 kml 图层
- 复选框单击事件 jQuery 不起作用
- jQgrid:禁用复选框单击,仅在单击复选框时选中复选框
- 复选框单击的限制
- 计数 + / - 用于复选框单击和取消单击
- 放大复选框单击区域
- 复选框单击功能不起作用
- 根据复选框单击更改表单输入的值
- 复选框单击有效,取消选中复选框不工作Javascript
- 需要在webforms-ascx复选框单击事件上以特定方式激发事件
- Ext.grid.EditorGridPanel中的复选框(单击一次可触发编辑后事件)