Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/367.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在ng2中一次选择多个项目_Javascript_Angular - Fatal编程技术网

Javascript 如何在ng2中一次选择多个项目

Javascript 如何在ng2中一次选择多个项目,javascript,angular,Javascript,Angular,在ng2中,我想在单击项目时选择多个项目,目前为止,它选择单击的一个项目,但是,我想在单击当前选择时保留已选择的项目 html plnker: 这段代码,当前只选择了我单击的一个项目,但是,我期望的是我希望保留最后一个选择,依此类推。 任何帮助都应按以下方式使用 <p><span class="tag" *ngFor="let selectedTagItem of tagsAvailable;let i = index" (click)="sele

在ng2中,我想在单击项目时选择多个项目,目前为止,它选择单击的一个项目,但是,我想在单击当前选择时保留已选择的项目

html

plnker:

这段代码,当前只选择了我单击的一个项目,但是,我期望的是我希望保留最后一个选择,依此类推。
任何帮助都应按以下方式使用

<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);
  }
{{selectedTagItem}

{{itemsSelected}json} selectItem(索引):无效{ 此.itemsSelected.push(索引); console.log(选中此.items); }

您也可以这样做

  selectItem(index,event):void {  
    console.log(index);  
    event.target.attributes.class.nodeValue="tag activeTag"  
    this.itemsSelected.push(this.tagsAvailable[index]);  
    this.itemsSelectedIndex.push(index)  
  }  

提供plunker链接。为什么不使用数组来存储所有选定的项目?
<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);
  }
  selectItem(index,event):void {  
    console.log(index);  
    event.target.attributes.class.nodeValue="tag activeTag"  
    this.itemsSelected.push(this.tagsAvailable[index]);  
    this.itemsSelectedIndex.push(index)  
  }