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()
来摆脱它。