我找到了通往check if event exists on element的路。但它不适用于未被jQuery委派的事件......
当我尝试时,
$("a").data("events");
为此。
<a href="#" onClick="alert('Hello, World!')" />
它返回undefined。
有没有办法检查带有jQuery的元素上是否存在 onClick ?
感谢。
答案 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) {}
我特别喜欢这种方法。