解决jQuery ajax请求在IE6中莫名中断的问题


Posted in Javascript onJune 20, 2016

场景还原:给a标签绑定了一个click事件用来触发ajax请求,在IE6中,请求时常会被中断,在非IE6中都一切正常。

<a href="javascript:;" id="btn">click me</a>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
 var url = "http://api.flickr.com/services/"
 "feeds/photos_public.gne?tags=car&"
 "tagmode=any&format=json&jsoncallback=?";
 $( "#btn" ).click(function(){
  $.getJSON( url, function( data ){
   alert( data );
  });
 });
</script>

在IE6中使用Fiddler2监视请求,经常会出现”aborted”,折腾了许久,相当的诡异。后来将a标签换成button,请求正常,最后经提醒,可能是a标签的默认事件中断了请求。但是,在HTML代码中,已经将a标签的href设置成了”javascript:;”,通常这样是可以阻止默认事件了(页面跳转)。a标签的click事件会先执行,然后才执行href的跳转,如果href是一段javascript语句,这个时候就会执行。IE6在执行href的javascript语句时就中断了click触发的ajax请求。使用href=”javascript:;”是为了阻止默认事件,将阻止默认事件的动作移到click事件中就可以解决问题了,这样就不会执行href中的javascript语句了。

$( "#btn" ).click(function(e){
 $.getJSON( url, function( data ){
  alert( data );
 });
 e.preventDefault();
});

注:e.preventDefault(); 这一句的作用就是阻止js中的默认事件。

以上就是本文的全部内容,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
静态的动态续篇之来点XML
Dec 23 Javascript
验证用户是否修改过页面的数据的实现方法
Sep 26 Javascript
JS 中document.URL 和 windows.location.href 的区别
Nov 11 Javascript
将字符串转换成gb2312或者utf-8编码的参数(js版)
Apr 10 Javascript
浏览器页面区域大小的js获取方法
Sep 21 Javascript
js验证上传图片的方法
May 12 Javascript
jQuery实用技巧必备(上)
Nov 02 Javascript
JS作用域深度解析
Dec 29 Javascript
详解微信小程序 template添加绑定事件
Jun 23 Javascript
自定义Vue中的v-module双向绑定的实现
Apr 17 Javascript
vue中使用 pako.js 解密 gzip加密字符串的方法
Jun 10 Javascript
浅谈Vue开发人员的7个最好的VSCode扩展
Jan 20 Vue.js
indexedDB bootstrap angularjs之 MVC DOMO (应用示例)
Jun 20 #Javascript
JS控制层作圆周运动的方法
Jun 20 #Javascript
简单实现jQuery进度条轮播实例代码
Jun 20 #Javascript
移动端H5开发 Turn.js实现很棒的翻书效果
Jun 20 #Javascript
angularjs封装bootstrap时间插件datetimepicker
Jun 20 #Javascript
jQuery插件 Jqplot图表实例
Jun 18 #Javascript
jqPlot jQuery绘图插件的使用
Jun 18 #Javascript
You might like
用PHP生成html分页列表的代码
2007/03/18 PHP
PHP如何抛出异常处理错误
2011/03/02 PHP
比较discuz和ecshop的截取字符串函数php版
2012/09/03 PHP
php上传apk后自动提取apk包信息的使用(示例下载)
2013/04/26 PHP
基于php权限分配的实现代码
2013/04/28 PHP
php开发工具有哪五款
2015/11/09 PHP
php将print_r处理后的数据还原为原始数组的解决方法
2016/11/02 PHP
PHP远程连接oracle数据库操作实现方法图文详解
2019/04/11 PHP
基于jQuery的淡入淡出可自动切换的幻灯插件打包下载
2010/09/15 Javascript
JavaScript二维数组实现的省市联动菜单
2014/05/08 Javascript
javascript实现动态表头及表列的展现方法
2015/07/14 Javascript
使用javaScript动态加载Js文件和Css文件
2015/10/24 Javascript
JavaScript组件开发之输入框加候选框
2017/03/10 Javascript
JS实现匀加速与匀减速运动的方法示例
2017/09/04 Javascript
基于bootstrap页面渲染的问题解决方法
2018/08/09 Javascript
浅谈Webpack多页应用HMR卡住问题
2019/04/24 Javascript
基于js实现复制内容到操作系统粘贴板过程解析
2019/10/11 Javascript
jquery 遍历hash操作示例【基于ajax交互】
2019/10/12 jQuery
微信小程序 生成携带参数的二维码
2019/10/23 Javascript
JS原形与原型链深入详解
2020/05/09 Javascript
Python urllib、urllib2、httplib抓取网页代码实例
2015/05/09 Python
python中import学习备忘笔记
2017/01/24 Python
Python实现一个Git日志统计分析的小工具
2017/12/14 Python
python如何通过实例方法名字调用方法
2018/03/21 Python
Python 实现将大图切片成小图,将小图组合成大图的例子
2020/03/14 Python
Python Django中的STATIC_URL 设置和使用方式
2020/03/27 Python
Maison Lab荷兰:名牌Outlet购物
2018/08/10 全球购物
公务员职务工作的自我评价
2013/11/01 职场文书
管理心得体会
2013/12/28 职场文书
ktv中秋节活动方案
2014/01/30 职场文书
网络工程专业自荐信范文
2014/03/16 职场文书
高中同学会活动方案
2014/08/14 职场文书
2014教师“四风问题”对照检查材料思想汇报
2014/09/16 职场文书
导游词之阳朔遇龙河
2019/12/16 职场文书
苹果可能正在打击不进行更新的 App
2022/04/24 数码科技
解决Vmware虚拟机安装centos8报错“Section %Packages Does Not End With %End. Pane Is Dead”
2022/06/01 Servers