首先点击radiobutton不显示价值

时间:2016-02-19 21:32:31

标签: angular

当我第一次点击单选按钮时,它没有显示值

<md-radio-group [(value)]="sex" layout="row" >
<md-radio-button value="Female" (click)="setSex(value)" >Female</md-radio-button>
<md-radio-button value="Male"  (click)="setSex(value)">Male</md-radio-button>

我试图在课堂上获得价值

 public sex:String;
 public vm: String;  

  setSex(sex:String)  {
      if (this.sex) { 
        this.vm = this.sex;
         console.log(this.sex)
               }
       }

Example

2 个答案:

答案 0 :(得分:1)

删除点击处理程序:

 <md-radio-button value="Female">Female</md-radio-button>
 <md-radio-button value="Male">Male</md-radio-button>

绑定到模型变量或使用单击处理程序,但两者都要求麻烦。

见这里:http://plnkr.co/edit/e5Ko608lNDmasZGJFV1M?p=preview

答案 1 :(得分:1)

您不能使用value作为事件参数(undefined)。我建议你创建本地模板变量,然后你可以将它们的值传递给事件处理程序:

<md-radio-button #r1 value="Female" (click)="setSex(r1.value)">Female</md-radio-button>
<md-radio-button #r2 value="Male"   (click)="setSex(r2.value)">Male</md-radio-button>

然后这将按预期工作:

setSex(sex:String)  {
   console.log(sex);
   ...
}