[英]Angular 4 - Remove multiple rows from table
我已經能夠使用拼接從表中刪除一行。 我現在要刪除多行
html
<tr *ngFor="let member of members; let i = index;">
<td>
<input type="checkbox" (change)="selChk(member.id, i)"
[checked]="false">
</td>
</tr>
因此每個循環的每一行都將被標記為0、1、2、3、4 ...
零件
以下是我選中的復選框的ID列表。
例如,當我檢查第一行和第二行時。 它將得到行0,1。 然后我將點擊刪除多個按鈕以使用行將記錄拼接起來
selChk(val:number, ind:number) {
var i = this.id.indexOf(val);
if(i === -1){
this.id.push(val);
this.ind.push(index);
}else{
this.id.splice(index,1);
}
}
單擊刪除多個按鈕時,以下代碼將觸發。 返回要刪除的正確行。 但我不知道如何拼接多個
removeSel() {
console.log(this.ind);
}
在您的組件代碼中添加以下功能:
removeSel() {
this.members = this.members.filter((_, idx) =>this.ind.indexOf(idx) === -1)
}
單擊“刪除多個”按鈕時,調用此removeSel函數: (click) = "removeSel()"
參考: MDN過濾器
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.