如何在ionic2中使用事件onChange

Pra*_*ats 4 ionic2 angular

基本上我正在尝试制作一个注册表单,其中有一些下拉列表.我想对它应用"(更改)"事件,它会在值发生变化时触发一个函数,或者我们可以说从该下拉列表中选择值,并根据我将动态分配下一个字段但此事件是当它与文本字段一起工作正常时,不工作下拉列表.有人可以帮我解决这个问题吗?

示例代码:

home.html - >

<ion-header>
  <ion-navbar>
    <ion-title>Home</ion-title>
  </ion-navbar>
</ion-header>
<ion-content padding>

<form [formGroup]="myForm">   
    <ion-item>
        <ion-label>Dropdown1 :</ion-label>
        <ion-select formControlName="dd" (ionChange)='f()'  #dd>
         <ion-option value='1'>A</ion-option>
            <ion-option value='2'>B</ion-option>
            <ion-option value='3'>C</ion-option>
            <ion-option value='4'>D</ion-option>
        </ion-select>
    </ion-item>

     <ion-item>
    <ion-label>Dropdown2 :</ion-label>
    <ion-select>
     <ion-option value='1'>E</ion-option>
        <ion-option value='2'>F</ion-option>
        <ion-option value='3'>G</ion-option>
        <ion-option value='4'>H</ion-option>
    </ion-select>
</ion-item>

</form> 
</ion-content>
Run Code Online (Sandbox Code Playgroud)

home.ts - >

import { Component } from '@angular/core';

import { NavController } from 'ionic-angular';

@Component({
  selector: 'page-home',
  templateUrl: 'home.html'
})
export class HomePage {

  constructor(public navCtrl: NavController) {

  }

  function f(){
  alert('Value Changed!');
  alert(this.myForm.dd);

  }

}
Run Code Online (Sandbox Code Playgroud)

Gün*_*uer 16

您可以使用 ngModel

<ion-select ngModel (ngModelChange)='f()' name="xxx">
Run Code Online (Sandbox Code Playgroud)

我不确定这ngModel部分是否需要ngModel应用.您可以尝试删除它,看看它是否仍然有效.

三个似乎也是一个ionChange事件

<ion-select (ionChange)='f()' name="xxx">
Run Code Online (Sandbox Code Playgroud)

http://ionicframework.com/docs/v2/api/components/select/Select/

  • 非常感谢。(ionChange)将完成这项工作。 (2认同)