2012-03-26 49 views
-4

點擊按鈕時忽略運行代碼的最佳方法是什麼?我正在嘗試以下內容,但目前我沒有反應如何完成。if語句周圍onclick

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 
} 
+4

「忽略運行代碼?」 「密碼不能跑?」什麼?你真的想做什麼? – 2012-03-26 20:52:34

+1

你可以[刪除處理程序](https://developer.mozilla.org/en/DOM/element.removeEventListener) – Joseph 2012-03-26 20:53:09

+3

當你點擊一個按鈕,你想*不*運行代碼?我不確定我是否理解,你能否詳細說明一下? – pimvdb 2012-03-26 20:53:28

回答

0

你會想對那個元素的引用,所以你最終不會在每次廣告點擊時找它,你需要一個變量保持跟蹤無論是被點擊或不:

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 
} 
+0

這看起來像我在找什麼。但是,我似乎無法從clicked =!點擊的函數中得到任何迴應。是; / – tiff2342 2012-03-26 21:15:30