Javascript 关于onclick的if语句

Javascript 关于onclick的if语句,javascript,onclick,getelementbyid,Javascript,Onclick,Getelementbyid,单击按钮时忽略正在运行的代码的最佳方式是什么?我正在尝试下面的方法,但是我现在没有得到我想要的结果 if (!document.getElementById('btn_Cancel').getAttribute('onclick')) { // code not to be ran when button is clicked By default code gets ran when a textbox goes onblur so do not want tha

单击按钮时忽略正在运行的代码的最佳方式是什么?我正在尝试下面的方法,但是我现在没有得到我想要的结果

if (!document.getElementById('btn_Cancel').getAttribute('onclick')) {
      // code not to be ran when button is clicked
         By default code gets ran when a textbox goes onblur so do not want that code ran when button gets clicked
}

您需要对该元素进行引用,这样就不会在每次单击该元素时都查找它,并且需要一个变量来跟踪它是否被单击:

var cancelButton = document.getElementById('btn_Cancel'),
    clicked = false;

cancelButton.addEventListener('click', function() { clicked = !clicked; }, false); 

// assuming this is in a loop or something:
if(!clicked) { 
    // running code 
}
else {
   // clicked, do nothing
}

忽略正在运行的代码?不运行的代码?什么你到底想做什么?当你点击一个按钮时,你可能不想运行代码?我不确定我是否理解,您能详细说明一下吗?您通常指定要在事件处理程序中运行的代码。。。如果你不想执行代码,就不要把它放在那里!如果您不想让代码运行,请单击某个按钮,不要将其添加到处理程序中。这与我要查找的类似。但是,我似乎无法从单击的函数中得到任何响应=!点击;是/