Ionic 2/3如何访问无线电警报中的值

时间:2017-08-28 11:03:58

标签: javascript ionic-framework ionic2 alert ionic3

我在Ionic 3上使用JavaScript并在iOS上工作。我试图实现一个带有无线电选项的警报供用户选择。

我无法在以下代码中使用/访问警报中选定的Radio值:

   let alert = this.alertCtrl.create({
        title: 'Specify the reason',
        inputs: [
          {
            type: 'radio',
            label: 'label 1',
            value: '0'
          },
          {
            type: 'radio',
            label: 'label 2',
            value: '1'
          }
        ],
        buttons: [
          {
            text: 'Cancel',
            role: 'cancel',
            handler: () => {
              console.log('Cancel clicked');
            }
          },
          {
            text: 'OK',
            handler: () => {
              console.log('OK clicked: ' );
              // I NEED TO GET THE VALUE OF THE SELECTED RADIO BUTTON HERE
            }
          }
        ]
      });
      alert.present();

2 个答案:

答案 0 :(得分:1)

您可以在OK处理程序中访问数据:

inputs: [
    {
        name: "myValue", // add a name property
        type: 'radio',
        label: 'label 1',
        value: '0'
    },
    {
        name: "myValue", // and here
        type: 'radio',
        label: 'label 2',
        value: '1',
    }
],
buttons: [
    {
        text: 'OK',
        handler: data => {
            console.log('OK clicked: ');
            // access through 'data.[nameproperty]'
            console.log(data.myValue);
        }
    }
]

答案 1 :(得分:1)

您确实在处理程序中获取了无线电数据。检查the docs ..您的Ok处理程序将数据作为参数。

    buttons: [
      {
        text: 'Cancel',
        role: 'cancel',
        handler: () => {
          console.log('Cancel clicked');
        }
      },
      {
        text: 'OK',
        handler: (radiobuttonData) => {
          console.log('OK clicked: '+ radiobuttonData );//here
        }
      }
    ]