如何在javascript中取消控件的onblur事件?

如何在javascript中取消控件的onblur事件?,javascript,javascript-events,Javascript,Javascript Events,我正在将焦点转移到下拉列表事件上的控件,焦点转移到所需控件,并且为该控件编写的onblur事件正在执行,我不希望执行该事件。如何防止这种情况发生 谢谢 Kishore如果您在设置焦点的同时设置了焦点,则可能会触发各种奇怪的事件。这个问题不是Javascript特有的;它发生在我使用过的每个GUI上。您无法可靠地阻止事件触发,如果您尝试不同的浏览器或在不同的操作系统上运行,您可能无法以相同的顺序获得相同的事件 我一直使用布尔变量作为标记来注意我是否处于设置焦点的中间,并在设置该标志时从OnFuff

我正在将焦点转移到下拉列表事件上的控件,焦点转移到所需控件,并且为该控件编写的
onblur
事件正在执行,我不希望执行该事件。如何防止这种情况发生

谢谢

Kishore

如果您在设置焦点的同时设置了焦点,则可能会触发各种奇怪的事件。这个问题不是Javascript特有的;它发生在我使用过的每个GUI上。您无法可靠地阻止事件触发,如果您尝试不同的浏览器或在不同的操作系统上运行,您可能无法以相同的顺序获得相同的事件

我一直使用布尔变量作为标记来注意我是否处于设置焦点的中间,并在设置该标志时从OnFuffice(?)等悄然返回。差不多

var isFocusGettingMessedWith; ... isFocusGettingMessedWith = true; someControl.focus(); isFocusGettingMessedWith = false; ... function someControl_onblur(event) { if (!isFocusGettingMessedWith) { /* do something */ } } function otherControl_onblur(event) { if (!isFocusGettingMessedWith) { /* do something */ } } var是focusgettingmessedwith; ... isFocusGettingMessedWith=true; someControl.focus(); isFocusGettingMessedWith=false; ... 函数someControl\u onblur(事件){ 如果(!isFocusGettingMessedWith){/*执行某些操作*/} } 函数otherControl_onblur(事件){ 如果(!isFocusGettingMessedWith){/*执行某些操作*/} } 这种方法在我有理由使用的每种语言/平台组合上都能可靠地工作