我有以下代码
<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 );
}
当点击label="Divorced'的按钮时,结果如下
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
对我来说是新的。我想它是某种区域或隔离信息。信息
selected
paper-radio-group
的属性绑定(bind)到 name
所选paper-radio-button
的属性 <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
}
关于dart - 获取纸质单选按钮的值(value),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24765923/