jQuery检查元素上是否存在onClick

时间:2009-12-07 10:33:18

标签: javascript jquery javascript-events

我找到了通往check if event exists on element的路。但它不适用于未被jQuery委派的事件......

当我尝试时,

$("a").data("events");

为此。

<a href="#" onClick="alert('Hello, World!')" />

它返回undefined。

有没有办法检查带有jQuery的元素上是否存在 onClick

感谢。

5 个答案:

答案 0 :(得分:17)

你可以这样做:

if ($('a').attr("onClick") != undefined) {}

答案 1 :(得分:8)

只是做:

if( myelement.onclick != null )
{
   //onclick exists
}
else
{
   //onclick doesn't exist
}

不需要jQuery。

答案 2 :(得分:3)

if( $('#elementName').click == undefined)  
   { //event handler doesn't exist }
else 
   { //handler exists }

答案 3 :(得分:0)

我认为以下事情也应该有效

if ($(yourElement).attr("onClick").length != 0) {}

if ($(yourElement).attr("onClick").size() != 0) {}

由于

答案 4 :(得分:0)

当然,这里有一些有效的答案,这是一个很好的答案让我走了。

if ($('a').attr("onClick") != undefined) {}

但是我找到了最适合你的答案,因为因为我们都在处理超链接,所以会寻找href属性。

if ($('a').attr("href") != undefined) {}

我特别喜欢这种方法。