我目前正在使用angular2。我有我的HTML代码
<div *ngFor="let val of channelForTabs; let i=index">
<label for="isCheckBox" style="margin-left:15px;">Draw</label>
<input id="checkBox{{i}}" type="checkbox" class="fitCheckbox" style="margin-left: 10px;width: 16px;" />
<de-series-prop></de-series-prop>
</div>
与channelForTabs中的值一样多次,多次复选框和系列组件都会被添加。如何在不调用(更改)方法的情况下检查选中的所有复选框。
我想知道点击按钮如何查看选中的复选框并使用相应的系列数据。
答案 0 :(得分:3)
您应该使用ngModel和ngModelChange事件,如下所示
<input type="checkbox" (ngModelChange)="clickedItem(color, $event)" checked="false" [ngModel]="!color"> {{color}}<br>
,您的方法将为
clickedItem(val,event){
if(event){
this.selectedItems.push(val);
}
console.log(val);
}
<强> LIVE DEMO 强>
答案 1 :(得分:1)
这将有效,但如果用户取消选中某个选项,则该值将保留在数组中。它必须在每次未经检查时拼接。
let indexx = this. selectedItems.indexOf(element.value);
this. selectedItems.splice(indexx, 1);