Javascript 当子';s onClick被激发
我有一个名为Javascript 当子';s onClick被激发,javascript,reactjs,typescript,events,keyboard-events,Javascript,Reactjs,Typescript,Events,Keyboard Events,我有一个名为onKeyUp的函数,定义如下,它侦听escape和enter键 const onKeyUp = (targetKey: string, event: React.KeyboardEvent<HTMLDivElement>) => { const key = event.keyCode; const editString = event.currentTarget.textContent; switch (key) { cas
onKeyUp
的函数,定义如下,它侦听escape和enter键
const onKeyUp = (targetKey: string, event: React.KeyboardEvent<HTMLDivElement>) => {
const key = event.keyCode;
const editString = event.currentTarget.textContent;
switch (key) {
case 27: // escape key
case 13: // enter key
if (editString.trim().length === 0) {
MOpenSnackBar({
message: {
key: new Date().getTime(),
message: "Target segment cannot be empty"
},
open: true
});
} else {
if (editString.trim() !== currentVal.trim()) {
props.onChangeCallback(targetKey, editString);
}
removeEditMode(targetKey);
}
break;
}
};
const done = (targetKey: string, event: React.MouseEvent<HTMLSpanElement, MouseEvent>) {
// call onKeyUp here
}
const onKeyUp=(targetKey:string,event:React.KeyboardEvent)=>{
const key=event.keyCode;
const editString=event.currentTarget.textContent;
开关(钥匙){
案例27://逃生钥匙
案例13://输入键
if(editString.trim().length==0){
莫本纳克巴({
信息:{
关键字:new Date().getTime(),
消息:“目标段不能为空”
},
开放:是的
});
}否则{
if(editString.trim()!==currentVal.trim()){
onChangeCallback(targetKey,editString);
}
removeEditMode(targetKey);
}
打破
}
};
const done=(targetKey:string,event:React.MouseEvent){
//打电话到这里来
}
它在div上定义,如下所示:
<div onKeyUp={onKeyUp.bind(null, props.targetStringId)}>
.. some tags here
<Tag onClick={done.bind(null, props.targetStringId)}>Done</Tag>
.. some more tags here
</div>
.. 这里有一些标签
多恩
.. 这里还有一些标签
我想在有人单击标记时触发与div的onKeyUp
相同的事件onKeyUp
我如何才能做到这一点?尝试将event.stopPropagation()
添加到您的onKeyUp()
函数:D事件中。stopPropagation()可以帮助您:D@AnhTuan没有得到you@AnhTuan天啊!!!!!你明白了。这将是伟大的,如果你可以添加这个答案!!不客气^^我以前遇到过这个问题