老生常谈:ie6下,a标签href设置javascript:void(0);后绑定的click事件,如果有form表单提交或跳转等事件,会失效!举例:
<a id="id_back" href="javascript:void(0);" title="返回管理">返 回</a>
$("#id_back").click(function(){
$("#id_frm").submit();
});
为什么呢?原因是:别的浏览器,会优先执行click事件里的方法;但对于ie6浏览器,href的优先级高于click事件,只执行了href上的链接void(0);则不会再执行click事件里的跳转动作。
如果解决呢?通常,在绑定事件的时候,return false,阻止浏览器默认行为。
$("#id_back").click(function(){
$("#id_frm").submit();
return false;
});
进一步分析尝试后,如下,分开执行的时机,就能提交了。
$("#id_back").click(function(){
window.setTimeout(function(){
$("#id_frm").submit();
}, 0);
});
时间: 2024-10-26 11:37:35