JQuery:从’a’标签中删除“OnClick”事件

这是一个奇怪的问题。 我们的内联网上有一些生产链接。 一些胭脂javascript在我们的内部网主页上的所有链接上返回“false”。

我们无权访问源代码来重新构建控件并修复此javascript。

因此,作为一个临时的创可贴,我想使用jquery在链接上移动所有“onClick”事件

现在的链接是这样的:

www.Mysite.com 

我想写一些jquery来获取“onclick =’AddHit …”代码。

你可以试试这个:

 $("a").removeAttr("onclick"); 

编辑根据评论和jquery文档更新答案:

注意:使用.removeAttr()删除内联onclick事件处理程序无法在Internet Explorer 6,7或8中实现所需的效果。为避免潜在问题,请改用.prop()

最好的方法:

 $("a").prop("onclick", null); 

从包含它的所有链接中删除该属性:

 $('a[onclick]').removeAttr('onclick'); 

根据JQuery文档,您应该使用.prop()来删除内联onclick,因为这可以避免Internet Explorer 6,7或8中的问题。

试试这个

 $element.prop("onclick", null); 

我需要在第一次点击后删除标签的onclick,所以这是我做的:

 onclick="$(this).prop('onclick', null);" 

希望能帮助到你

你可以这样做;

 $('a[onclick]').removeAttr('onclick'); 
 $(function(){ $('a[onclick*="AddHit"]').removeAttr('onclick'); } 

这将删除所有这些,但您要确保不要将其从不需要的链接中删除。 很多东西都挂钩了onclick属性,如果你有一个类,你可以在删除之前validation或者onclick的内容会更好。 不愿看到整个网站停止工作,因为需要JS没有被调用。 这将删除onclick中使用AddHit函数的任何onclicks,以使您更安全。

这将删除具有onclick值的所有链接的onclick属性,该值以“ AddHit( ”(保持其他链接不变)开头。

 $('a[onclick^="AddHit("]').removeAttr("onclick"); 

没有测试,但我认为这应该工作:

 $(document).ready(function(){ $('a').removeAttr("OnClick"); }); 

更多信息: http : //api.jquery.com/removeAttr/

请记住这一点,如果你的’onclick’属性是在线并且在MODAL中(引导程序)

像这样:(在模态中)

 Click here ! 

– >请注意标签!

在jQuery中(在第一个选择器中使用body):

 $('body #myDiv').prop('onclick', null); 

我搜索了几个小时……

使用.unbind()方法或off()来摆脱它。