2013-01-13 72 views
1

我有一個簡單的菜單採用這種結構:禁用點擊調用JavaScript函數

<ul class="navigation"> 
    <li><a href="javascript:void(0)" onclick="javascript:dataTable()">Preview all record</a></li> 
</ul> 

在某些情況下,在我的項目,我需要禁用調用的dataTable()函數時,在這個標籤用戶點擊

我用這

$('ul.navigation a').click(function(event){ 
    event.preventDefault(); 
}); 

,但它不工作我

回答

3

嘗試刪除onclick HTML屬性改爲:

$("ul.navigation a").removeAttr("onclick"); 
+0

整個網站使用AJAX調用所有的網頁,所以當我的onclick刪除,我怎麼可能讓它再次工作 – ahmedsaber111

+0

好了,如果所有的鏈接調用'的dataTable()',你可以叫它明確。但是,如果你想要支持任意的Javascript語句,你必須在其他地方(也許像'data-old-onclick'屬性那樣)保存'onclick'的前一個值,並且從你的''onvalue''上調用'eval事件處理器。 –

0

嘗試保存價值,並設置onclick屬性,什麼也沒有:

var tmpVal = $("ul.navigation a").attr("onclick"); 
$("ul.navigation a").attr("onclick",""); 

,您可以重新恢復值:

$("ul.navigation a").attr("onclick",tmpVal);