【发布时间】:2017-10-10 03:50:11
【问题描述】:
移动onClick ={props.onPassFail} 会在移动到包装<Label> 时触发,但在附加到<Input> 控件时不会触发。我最终想触发 onChange 事件,但不明白为什么 Input 没有注册 onClick 或 onChange 事件。我遵循 Bootstrap 4.0.0-beta 所需的单选按钮约定。
如何将 onClick 和 onChange 直接附加到 <Input> 控件?
代码:
<div className="btn-group" data-toggle="buttons">
<label className="btn btn-secondary passfail passfail-fail" onClick={props.onPassFail}>
<input type="radio" name="passfail" id="option1" autoComplete="off" /> Fail
</label>
<label className="btn btn-secondary passfail passfail-pass" onClick={props.onPassFail}>
<input type="radio" name="passfail" id="option2" autoComplete="off" /> Pass
</label>
</div>
【问题讨论】:
-
通过点击输入,而不是标签
-
错误是传递 onClick 到输入什么都不做。 @Amt Labib 的解决方案是使用 React 组件而不是无状态函数。
标签: reactjs dom dom-events