我很困惑一點關於如何應對手柄的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中添加了一致性 - 並不意味着它按照您的預期工作。 –