2015-05-08 53 views
2

我使用的脚本如下编码的外部文件如何使用同一元素在其中触发onclick事件

function DiableLink(elem){ 
    console.log($(elem).attr('type')); 
    if($(elem).hasClass('disabled')) { 
     return false; 
    } 
    else { 
     $(elem).addClass('disabled'); 
    } 
} 

用作按照HTML

<a onClick="DiableLink(this);" class="hid" href="somelink.jsp"></a> 


功能 我使用了相同的功能,使用ID如下

$(function(){ 
    $('.hid').click(function(){ 
     var link = $(this); 
     if(link.hasClass('disabled')) { 
     return false; 
     } 
     else { 
     link.addClass('disabled'); 
     } 
    }); 
}); 

这是完美的工作(我从stackoverflow得到它)。 但我不知道为什么在onclick事件中调用不起作用。请任何人都可以帮忙?我错了

+0

你把这个功能b/w''标签? – ozil

+0

我是否需要放入外部JavaScript文件?因为没有它,我提到的代码最后工作@厄齐尔 – Kuru

+2

你可以把该功能放在具有''标签的同一个文件中。但将它放在''标签 – ozil

回答

0

如果您使用的是事件处理程序而不是函数,则需要保留onclick="" atrribute为空。

Demo

+0

我问的解决方案对于第一个代码我发布不是最后一个代码,这是工作,我没有使用onclick而使用该代码:) – Kuru

0

编辑

我会调用该函数内HREF:

<a href="javascript: yourFunction(); location.href='newpage.js';">Click</a> 
您的解决方案实际上 JS Bin

我写的作品

但是,如果你想通过href属性传递锚标签元素,它将不起作用。因此,这将工作:

<a href="javascript: yourFunction(this); location.href='newpage.js';">Click</a> 

在这种情况下,你必须使用onclick事件(内嵌或在一个单独的文件,因为我以前写)。

+0

Downvoted你的答案,因为你应该至少研究了'onClick'是否区分大小写。直接假设的答案很难予以重视。只是要记住。 :) –

+0

提交答案后不久我研究​​了它:)无论如何,你是对的,我应该做到这一点。 – moonknight

+0

编辑你的答案,我会删除downvote,公正和广场! –

相关问题