2012-04-02 119 views
1

我有一个链接在div id我必须禁用点击事件,也隐藏。 这里是我的Div ID,我需要禁用点击事件。jQuery禁用点击

<div class="bookmark" align="left"> 
    <div align="left">&nbsp;&nbsp; 
    <img src="<c:url value="/images/Bookmarks1.png">"align="absmiddle" border="0" width="18" height="18" /> 
<a href="#" id="bookmarkviewall" class="book tabs" style="text-decoration: none;"> Bookmark</a> &nbsp; 
    <a href="#" id="bookmarkpopup" class="book tabs" onclick="javascript:return false;"> 
     <img alt="Add Bookmark" src="<c:url value="/images/red_plus.png"/>" align="absmiddle"> 
    </a> 
    </div> 
</div> 

我写的功能是: -

function disablingBookmark(){ 
    $("#bookmarkviewall").removeAttr("href"); 
    $("a#bookmarkviewall").removeAttr("class"); 
    $("#bookmarkpopup").removeAttr("href"); 
    $("a#bookmarkpopup").removeAttr("onclick"); 
    $("a#bookmarkviewall").attr("class","greyFont tabs1"); 
    $("#colorpickerDiv").hide(); 
} 

这是我的js文件: -

$("#bookmarkviewall").click(function(e){ 
     var selectedId = "#"+currentSelectedTabId; 
     $(selectedId).removeAttr("style"); 
     currentSelectedTabId = null; 
     highlight($('#content').attr("id")); 
    //For hiding the popuped menu 
    //$("#rightHandPanelStatus").attr("recent","bookmarks"); 


     highlightForToolBox($('#bookmarkviewall').attr("id")); 

     var currentNumberOfRecordsPerPage = 10; 
     var currentPageNumber = 1; 

     $.post("/core-web/bookmark/viewlist", jQuery.param({pageNumber :currentPageNumber, NumberOfRecordsPerPage :currentNumberOfRecordsPerPage, pageId:currentPageId}), function(data) { 
       $('#center_in').html(data); 
     }); 



    }); 
}, 

链接是禁用,但仍然click事件是working.any帮助。请致电 。

+0

$(“a#bookmarkpopup”)。click(function(e){e.preventDefault();}) – mshsayem 2012-04-02 05:39:12

+0

这个问题是人们急于提供答案而没有解释的一个障碍。等到尘埃落定之后才能确定谁的建议是好的。 – 2012-04-02 05:40:57

回答

0

您可以先删除href属性,并使用e.preventDefault()来阻止您的默认点击功能。请参见下面的示例代码和演示here

var link = $(".bookmark").find("a"); 
link.removeAttr('href'); 
link.click(function(e) { 
    e.preventDefault(); 
});​ 

我已经在你的实际代码使用不同的图像。参见Jsfiddle

它在这里工作。似乎你的jsp代码有问题。请检查您的代码并确保其工作。

+0

先生尝试过,但仍然点击事件是火。我写了这个函数disablingBookmark(){ \t // alert(“hii disable bookmark”); \t \t var link = $(“。bookmark”)。find(“a”); \t link.removeAttr(“href”); \t link.click(函数(e)中{ \t \t e.preventDefault(); \t \t \t }); \t \t \t } – Anurag 2012-04-02 06:17:09

+0

看看演示其工作。 你的html代码看起来不整齐,不能正确渲染。 – Dips 2012-04-02 06:27:18

+0

是的,先生你的演示工作正常。但是当我在我的功能实现它不工作。 – Anurag 2012-04-02 06:29:04

0
$("a#bookmarkpopup").click(function(){return false;}) 
0

锚点标记的点击处理程序应该被处理以检查被禁用的div。如果可用,应该禁用它。
希望你明白。不需要任何示例权。!? 。让我进一步了解。

+0

Mindsource的编码风格.. :( – 2012-04-02 05:39:20

0

简单的附加的onclick = “返回false”

可能它可以工作

<div class="bookmark" onclick="return false" align="left"> 
    <div align="left">&nbsp;&nbsp; 
    <img src="<c:url value="/images/Bookmarks1.png">"align="absmiddle" border="0" width="18" height="18" /> 
<a href="#" id="bookmarkviewall" class="book tabs" style="text-decoration: none;"> Bookmark</a> &nbsp; 
    <a href="#" id="bookmarkpopup" class="book tabs" onclick="javascript:return false;"> 
     <img alt="Add Bookmark" src="<c:url value="/images/red_plus.png"/>" align="absmiddle"> 
    </a> 
    </div> 
</div> 

,你可以将它添加到身体,以防止任何形式的行动上点击

<body onclick="return false" > 

要做到你可以用每个链接做具体的链接

<a href="something" onclick = "return false;"> 
+0

谢谢,但如何添加在disablingBookmark()请扩大。 – Anurag 2012-04-02 05:42:59

+0

谢谢先生,但在一些选定的链接,我想禁用链接,之后休息它将是正常的..所以我想我不能永远返回false,如果我这样做,那么div永久禁用不是。 – Anurag 2012-04-02 07:28:00

+2

所以如果你想要做特定的链接,然后只需要通过onclick =“返回false;” 与每个链接 像 或如果你想,那么你也可以做类 – Trikaldarshi 2012-04-02 08:26:31

0

这会禁用点击事件全部定位标记。

$('a').click(function(e) { 
    e.preventDefault(); 
}); 

希望你从这里拿它。否则,我们只会把整个代码给你。