IE6中ajax aborted错误请求中断解决方法
程序员文章站
2022-05-18 08:34:07
给a标签绑定了一个click事件用来触发ajax请求,在ie6中,请求时常会被中断,在其他浏览器中都一切正常。 在ie6中使用fiddler2和httpwatch监视请求,...
给a标签绑定了一个click事件用来触发ajax请求,在ie6中,请求时常会被中断,在其他浏览器中都一切正常。
在ie6中使用fiddler2和httpwatch监视请求,经常会出现”aborted”,折腾了许久,相当的诡异。后来将a标签换成button,请求正常,最后经提醒,可能是a标签的默认事件中断了请求。但是,在html代码中,已经将a标签的href设置成了”javascript:void(0)”,通常这样是可以阻止默认事件了(页面跳转)。a标签的click事件会先执行,然后才执行href的跳转,如果href是一段javascript语句,这个时候就会执行。ie6在执行href的javascript语句时就中断了click触发的ajax请求。使用href=”javascript:void(0)”是为了阻止默认事件,将阻止默认事件的动作移到click事件中就可以解决问题了,这样就不会执行href中的javascript语句了。
注:给a加上onclick='return false;',也可以解决问题。
在ie6中使用fiddler2和httpwatch监视请求,经常会出现”aborted”,折腾了许久,相当的诡异。后来将a标签换成button,请求正常,最后经提醒,可能是a标签的默认事件中断了请求。但是,在html代码中,已经将a标签的href设置成了”javascript:void(0)”,通常这样是可以阻止默认事件了(页面跳转)。a标签的click事件会先执行,然后才执行href的跳转,如果href是一段javascript语句,这个时候就会执行。ie6在执行href的javascript语句时就中断了click触发的ajax请求。使用href=”javascript:void(0)”是为了阻止默认事件,将阻止默认事件的动作移到click事件中就可以解决问题了,这样就不会执行href中的javascript语句了。
注:给a加上onclick='return false;',也可以解决问题。