在ng2中,我想在单击该项目时选择多个项目,截至目前,它选择了一个单击的项目,但是,当我单击当前选择时,我还想保留已选择的项目。 / p>
HTML
<span class="tag" *ngFor="let selectedTagItem of tagsAvailable;let i = index" [ngClass]="{'activeTag': selectedIdx == i}" (click)="selectItem(i)">{{selectedTagItem}}</span>
TS
export class listComponent implements OnInit {
public tagsAvailable:string[] = ['Alabama', 'Alaska', 'Arizona', 'Arkansas',
'California', 'Colorado']
selectedIdx = 0;
selectItem(index):void {
this.selectedIdx = index;
}
}
plnker:http://plnkr.co/edit/7b3VUnGERBspSU1JKEXi?p=preview
此代码,目前只选择我点击的一个项目,但是,我期待的是我想保留最后一个选择,之前如此。 任何帮助
答案 0 :(得分:0)
你应该使用如下
<p><span class="tag"
*ngFor="let selectedTagItem of tagsAvailable;let i = index"
(click)="selectItem(i)">{{selectedTagItem}}</span></p>
{{itemsSelected |json}}
selectItem(index):void {
this.itemsSelected.push(index);
console.log(this.itemsSelected);
}
<强> LIVE DEMO 强>
答案 1 :(得分:0)
你也可以这样做。
selectItem(index,event):void {
console.log(index);
event.target.attributes.class.nodeValue="tag activeTag"
this.itemsSelected.push(this.tagsAvailable[index]);
this.itemsSelectedIndex.push(index)
}