jQuery div点击,捕获不良点击

时间:2011-03-01 16:19:43

标签: jquery asp.net

要使div可点击,我可以使用:

$(".clickable").click(function (event) {
    window.location = $(this).find('a').attr('href');
    event.preventDefault();
});

我在asp.NET中使用<asp:Repeater>来创建几个这样的<div>

问题是这个jQuery中的所有点击都被这个jQuery选中了 - 我在div中也有一个<asp:Button>,为此我想抓住点击正常,在repeater_ItemCommand事件中处理它 - 但这不会触发 - 页面只是重定向到div中超链接中找到的href。

无论如何,我可以停止此操作并使按钮正常启动?

2 个答案:

答案 0 :(得分:2)

您需要检查event.target是否为input元素(使用nodeName属性,或致电$(event.target).is(...))。

如果是,请不要在处理程序中执行任何操作。

答案 1 :(得分:0)

执行此操作的一种方法是修改标记,并在主div内添加另一个div,其中包含锚标记。给这个类点击。并将你的按钮放在它之外,就像这样。

<div>
    <div class='clickable'>
        <a href='#'>Link</a>
   </div>
   <asp:button>
</div>