2013-10-25 62 views
0

我在嘗試做一個簡單的操作:if(confirm()){actions},但即使沒有按下確認/取消操作也會執行一些操作。如何防止confirm()的默認操作JavaScript

這裏是我的代碼:

$("#checkbox").click(function() { 

    if (confirm("Continu ?")) { 
     hideShowDiv("test"); 
     $(this).attr("checked", true); 
    } 
} 

我這種情況下,如果你點擊複選框,即使你沒有按確認/取消,該複選框將被選中,但在div「測試」贏將不會顯示(除非您按確認)。我不知道爲什麼這行:

$(this).attr("checked", true); 

在confirm()返回之前執行。

+0

什麼是您使用的jQuery文件的版本? –

回答

2

嘗試添加e.preventDefault();

$("#checkbox").click(function(e) { 
    e.preventDefault(); 
    if (confirm("Continu ?")) { 
     hideShowDiv("test"); 
     $(this).attr("checked", true); 
    } 
} 
+0

或返回false;在點擊回調結束 –

+0

它的作品,謝謝你們 – user2688870