我很困惑一点关于如何应对手柄的onChange事件无线电输入:阵营火的单选按钮更改事件只有一次
var Hello = React.createClass({
onChange: function(e) {
console.log(e);
},
render: function() {
return (
<form onChange={this.onChange}>
<input type='radio' name='a' value="1" />
<input type='radio' name='a' value="2" />
<input type='checkbox' name='a' />
<input type='checkbox' name='a1' />
</form>
)
}
});
看来无线电它将触发事件只有一次,而对于复选框键入按预期工作?
我做错了什么?
请考虑the fiddle
你拨弄不匹配你想证明什么。 –
收音机可能很奇怪。 React尝试对所有输入进行规范化处理,以及它们如何触发onChange,但它不像您期望的那样工作。你应该得到一个为你抽象(例如onClick => onChange)的广播组组件,然后冒泡'onChange'作为一般用途。 https://github.com/chenglou/react-radio-group –
对于如何在反应本身中处理这个问题,一直存在着讨论和分歧。看到https://github.com/facebook/react/issues/8727等 - 传统的DOMApi只是点击。 onChange在反应API中添加了一致性 - 并不意味着它按照您的预期工作。 –