从选择角度4中删除选项

时间:2017-08-03 10:17:50

标签: angular cordova ionic-framework

我需要一个场景中的帮助,场景在一个页面上我有4个选择输入,每个输入都有它们的来源,就像来自master中的4个项目副本。

例如

<ion-select (ionChange)="onChange($event,i)" class="select-bx" placeholder="Select Security Question" [(ngModel)]="objQuestListModel[i].selQuestionId">
    <ion-option *ngFor="let items of objQuestList[i]" value="{{items.QuestionId}}">{{items.QuestionText}}</ion-option>
  </ion-select>

所以我想从每个下拉列表中删除所有选定的项目,但保留所选项目以便选择下拉列表。

例如在下拉列表1中如果我选择了A选项,则从所有剩余下拉列表中删除它 在下拉列表2中如果我选择了选项B,那么它应该从下拉列表1中删除。 我正在使用带有cordova的角度4。

请帮帮我。

此致 阿尼尔库马尔

1 个答案:

答案 0 :(得分:0)

我不知道离子,所以我会使用角度语法。

在您的组件打字稿文件中,您应该执行以下操作:

private selectedOptions:number[] = [];

private onChangeSelectBox(event:any){
    let value:number = event.target.value;
    if(this.selectedOptions.indexOf(value) == -1){
        this.selectedOptions.push(value);
    }
}


private showOption(optionId:number):boolean{
    return this.selectedOptions.indexOf(optionId) == -1;
}

在你的html文件中:

<select (change)="onChangeSelectBox($event)">
      <template ngFor let-item [ngForOf]="yourItemsCollection">
         <option *ngIf="showOption(item.id)" value="{{item.id}}">
            {{item.name}}
         </option>
      </template>
<select>