0

我想编辑填写的表格,但我没有从下拉元素中获得值

  <ion-item style="background-color:transparent">
    <ion-label required class="label">Class
      <span>
        <b style="color:red">*</b>
      </span>
    </ion-label>
    <ion-select [selectOptions]="selectOptions1" value="{{class}}" placeholder="Select Class" formControlName="class">
      <ion-option *ngFor="let class of plannerDetail.course.class; let i = index" (ionSelect)="setClassIndex(i)" value="{{class.id}}">{{class.course_name}}</ion-option>
    </ion-select>
 </ion-item>

ts文件

placeForm: FormGroup;
class: AbstractControl;

constructor(){
this.placeForm.formBuilder.group({
placeId: [’’, Validators.required],
});
this.placeForm.get(‘class’).setValue(myArray.class);
}
4

2 回答 2

0

您必须在元素中更改 to 的方法ionSelect并给出它,以便您可以获得类值。在 ts 文件中创建一个函数,您可以在其中获取它的值。ionChangeion-select$event

<ion-select placeholder="Select Class" formControlName="class" (ionChange)="setClassIndex($event)">
     <ion-option *ngFor="let class of plannerDetail.course.class;let i of index" [value]="class.id">{{class.course_name}}</ion-option>
    </ion-select>

ts文件

 placeForm: FormGroup;
     constructor(public navCtrl: NavController,
        public navParams: NavParams,
        private fb: FormBuilder) {
    this.placeForm = this.fb.group({  
          class: [``, Validators.required]
        });
    }
     setClassIndex($e) {
        this.profileForm.value.class = $e;
      }

希望对你有帮助!

于 2018-06-26T11:53:56.353 回答
0

您可以像这样创建双向数据绑定ngModel

.html

<ion-select [(ngModel)]="myVar">...</ion-select>

.ts

myVar = 'optionValue';

它的基本作用是:

  • (ngModel)="myVar":当用户更改选项时,它将保存到您的变量中
  • [ngModel]="myVar":当您更改.ts文件中的值时,它也会在模板中更改

因此,您可以控制ion-select值以及您的用户。

于 2018-06-23T09:54:46.860 回答