Javascript 如何停止React中特定元素的onClick事件的执行
我使用的是MaterialUI,我有一个TableRow元素,它有onClick事件。但是现在我必须在表中添加一个复选框。复选框包装在TableCell元素中,该元素是TableRow的一部分。现在,当我单击复选框时,它将触发onClick事件,我不希望发生这种情况。是否有可能以某种方式停止函数的传播!?我可以为该特定单元格禁用onClick吗?如果可以,是否可以单击复选框?或者,如果元素具有某些特定ID(例如,不执行),我应该在函数调用内部执行一些魔术?您可以在复选框单击处理程序中使用Javascript 如何停止React中特定元素的onClick事件的执行,javascript,reactjs,material-ui,Javascript,Reactjs,Material Ui,我使用的是MaterialUI,我有一个TableRow元素,它有onClick事件。但是现在我必须在表中添加一个复选框。复选框包装在TableCell元素中,该元素是TableRow的一部分。现在,当我单击复选框时,它将触发onClick事件,我不希望发生这种情况。是否有可能以某种方式停止函数的传播!?我可以为该特定单元格禁用onClick吗?如果可以,是否可以单击复选框?或者,如果元素具有某些特定ID(例如,不执行),我应该在函数调用内部执行一些魔术?您可以在复选框单击处理程序中使用e.st
e.stopPropagation()
,以便不触发父元素的单击事件
function MyCheckbox() {
function handleClick(e) {
e.stopPropagation();
....
}
return (
<label>
<input type="checkbox" onClick={handleClick} />
Click me
</label>
);
}
函数MyCheckbox(){
函数handleClick(e){
e、 停止传播();
....
}
返回(
点击我
);
}
谢谢,这很有帮助。我使用if event.target.id==='something'停止传播:)