我有一個簡單的任務,我試圖完成:每當單選按鈕在組之間切換時觸發一個函數。無線電輸入onChange只會觸發一次?
class App extends Component {
onButtonClick() {
console.log('something was clicked!')
}
return (
<div>
<button onClick={this.onButtonClick.bind(this)}>
Click me
</button>
<input
type="checkbox"
onChange={this.onButtonClick.bind(this)}
/>
<input
type="radio"
value="yes"
name="answer"
onChange={this.onButtonClick.bind(this)}
/>
<input
type="radio"
value="no"
name="answer"
onChange={this.onButtonClick.bind(this)}
/>
</div>
)
}
按鈕和複選框工作得很好。如果你點擊它,它會多次觸發該功能。單選按鈕觸發一次然後停止。
就好像ReactJS由於某種原因停止收看單選按鈕的onChange一樣。任何幫助將不勝感激。謝謝!
UPDATE
現在看來似乎正常工作在https://codesandbox.io/s/rGMGzJNL,但不是在我的本地環境,這是完全令人費解的正常工作。如果我知道發生了什麼,將會更新,但如果有人遇到過這種情況,希望得到任何指導!
嘗試移動處理程序綁定到構造'this.handleWeddingRsvp.bind(這)' – Umesh
不遺憾的是改變任何東西。讓我以我的榜樣來幫助說明問題。 – BenCodeZen
嘗試使用'onclick'作爲你的事件 - 在原生JS你不能使用'onchange' https://stackoverflow.com/questions/8838648/onchange-event-handler-for-radio-button-input-type-radio -doesnt-work-as-one – Toastrackenigma