飞镖 – 获得纸质收音机按钮的价值

我有以下代码

      <paper-radio-group
        id="marital-status-group"
        on-change={{changeHandler}}>
        <paper-radio-button name='Married' label='Married'></paper-radio-button><br>
        <paper-radio-button name='Divorced' label='Divorced'></paper-radio-button><br>
        <paper-radio-button name='Single' label='Single'></paper-radio-button><br>
        <paper-radio-button name='Visiting' label='Visiting'></paper-radio-button>
      </paper-radio-group>

  void changeHandler( CustomEvent e )
  {
     print ( ( e.target as PaperRadioButton ).label );
  }

单击标签=“离婚”的按钮时,结果如下

Divorced (http://localhost:8080/packages/polymer/src/js/polymer/polymer.js:12) 

我所需要的只是“离婚”而不是括号中的其他部分.
如果我应该单击另一个按钮,则会打印两个选项.

出了点问题.请问有什么正确的选择.

最佳答案 我认为您的示例按预期工作 – 即使您预期的那样;-)(http:// localhost:8080 / packages / polymer / src / js / polymer / polymer.js:12)仅由print()方法添加.

print((e.target as PaperRadioButton).label == 'Male');

版画

false (http://localhost:8080/packages/polymer/src/js/polymer/polymer.js:12)
true (http://localhost:8080/packages/polymer/src/js/polymer/polymer.js:12)

取决于您选择的元素.因此,您只需在代码中使用标签值即可.

我不知道为什么print()会添加这个.
在< app-element>中我用于此测试它根据我打印的位置添加不同的文本

AppElementConstructor (:1)
attached (:1)
ChangeEventhandler (http://localhost:8080/packages/polymer/src/js/polymer/polymer.js:12)

(我已经习惯了(:1)但是…… / polymer.js:12对我来说是新的.我想它是某种区域或隔离信息.

信息

paper-radio-group的selected属性绑定到所选纸张单选按钮的name属性

  <paper-radio-group
    id="marital-status-group"
    selected="{{selectedName}}">
    <paper-radio-button name='Married' label='Married'></paper-radio-button><br>
    <paper-radio-button name='Divorced' label='Divorced'></paper-radio-button><br>
    <paper-radio-button name='Single' label='Single'></paper-radio-button><br>
    <paper-radio-button name='Visiting' label='Visiting'></paper-radio-button>
  </paper-radio-group>

并在元素的Dart代码中

  @observable String selectedName;

  void selectedNameChanged(old) {
    // do something when the another radio button got selected
  }
点赞