解决jquery .ajax 在IE下卡死问题的解决方法
解决IE编码问题第一步:
dataType:($.browser.msie) ? "text" : "xml" 先这样做让IE 识别返回的是text 还是xml
第二步:
代码如下:
function parseXml(xml) { //XML IE编码问题第二步
if (jQuery.browser.msie) { // 判断浏览器是不是IE
var xmlDoc = new ActiveXObject("Microsoft.XMLDOM"); //微软下面的xmldom对象
xmlDoc.loadXML(xml);
xml = xmlDoc;
}
return xml;
}
function getText(xml)
{ var newXML=parseXml(xml);
var sp=$("#special");
var manage=$("#manageContent");
var common=$("#common");
。。。。。 略
}
在正在做的项目中得到了应用,故给予提倡。。
为什么会出现在IE无效化呢,从上面的解决方案可以知道是XML文件的编码问题,在转化会前台可读时并未符合IE的XML 对象,故需要翻译成IE兼容的对象。
相关推荐
-
ie下jquery.getJSON的缓存问题的处理方法
在项目中遇到一个问题,在火狐下,$.getJSON();请求数据一切正常,但是在IE下面,$.getJSON():只请求一次数据,第二次根本就不发送请求了,用fiddler抓取了才知道,第二次没有发送请求,改成了post就正常了 $.getJSON()存在缓存问题,如果其调用的url之前曾经调用过的话,回调函数就会直接在缓存里取得想要得值,而不是进入到后台 解决方法如下: 1.让每次调用的URL都不一样. 方法:在参数中加一个随机数 复制代码 代码如下: $.getJSON("/Member/G
-
IE下jquery ajax无法获得最新数据的问题解决(IE缓存)
今天修改一个bug,利用ajax查询数据,在谷歌浏览器下可以获取到最新数据,而在IE中获得是旧数据,无法获得最新的数据,经查资料,才发现时IE缓存再作怪. 发现此ajax请求用的get方式,每次请求的URL一模一样,IE浏览器有个特殊的地方,如果每次请求的URL一样时,就会拿出缓存中已有的数据显示在页面上,并不会再次去查询数据库,所以每次显示的都是旧数据. 解决办法: 那就有思路了,我们可以让它每次请求的URL不一样,可以加一个参数,而且这个参数的值每次都不一样,时间戳最好不过了. 复制代码 代
-
Jquery中Ajax 缓存带来的影响的解决方法
使用jquery里load方法或者ajax调用页面的时候会存在cache的问题,清除cache的方法: 调用$.ajaxSetup ({cache:false}) 方法即可. 复制代码 代码如下: <script type="text/javascript"> $.ajaxSetup({ cache: false }); </script>
-
jquery用get实现ajax在ie里面刷新不进入后台解决方法
复制代码 代码如下: function verify() { var jqueryObj = $("#username"); var username = jqueryObj.val(); //var url = "servlet/UserInfo?username=" + encodeURI(encodeURI(username)); var url = "servlet/UserInfo?username=" +username; //注意这
-
AJAX 缓存问题的两种解决方法(IE)
做一个项目用到Ajax,开始觉得挺好,后来发现一个问题,例如删除一项,恢复之后就不能再接着删除, 必须要等一段时间,后来知道是IE缓存的问题 AJAX缓存页面是一个刚接触AJAX的人一定会遇到的问题,造成这个问题的关键性人物又是Ie... 在网上找了好多资料后,总结一下 1:在AJAX请求的页面后加个随机函数,我们可以使用随机时间函数 在javascript发送的URL后加上t=Math.random() 当然,不是直接把t=Math.random()拷贝到URL后面,应该像这样:URL+"&a
-
ajax页面无刷新 IE下遭遇Ajax缓存导致数据不更新的问题
在做ajax页面无刷新添加的时候,IE下遭遇Ajax缓存,因为刚开始并不知道IE有这个坏毛病,折腾好久,终于解决问题. 总结一下解决办法: 在IE下用Ajax请求某一页面,通常会因为缓存的原因而返回上一次的结果,造成混乱,[即get方式时,获取数据,因发送参数和地址都一致,故IE浏览器会从缓存中取,而不会去请求服务器端,而post方式因为参数的不同,不会产生这个问题]而FF下不会出现这种情况.为了不受缓存影响,可以这样做: IE访问策略: Internet选项--浏览历史记录--设置-- Int
-
解决jquery .ajax 在IE下卡死问题的解决方法
解决IE编码问题第一步: dataType:($.browser.msie) ? "text" : "xml" 先这样做让IE 识别返回的是text 还是xml 第二步: 复制代码 代码如下: function parseXml(xml) { //XML IE编码问题第二步 if (jQuery.browser.msie) { // 判断浏览器是不是IE var xmlDoc = new ActiveXObject("Microsoft.XMLDOM&qu
-
解决jQuery ajax动态新增节点无法触发点击事件的问题
在写ajax加载数据的时候发现,后面添加进来的demo节点元素,失去了之前的点击事件.为什么点击事件失效,我们该怎么去解决呢? 其实最简单的方法就是直接在标签中写onclick="",但是这样写其实是有点low的,最好的方式还是通过给类名绑定一个click事件. 解决jQuery ajax动态新增节点无法触发事件问题的两种解决方法,为了达到更好的演示效果,假设在某个页面的body下有以下结构的代码: <ul id="demo"> <li class
-
解决jquery无法找到其他父级子集问题的方法
本文为大家分享了jquery无法找到其他父级子集解决方法,供大家参考,具体内容如下 方法一:结合php解决错乱问题,给选择项加入class删除class解决 情况:页面中纯在两个相同的子集和相同的父级元素 $(function(){ //删除订单功能 $('.ftTr_delA').live('click',function(){ //获取roid var orid =$(this).attr('orid'); //传递roid ftNum=orid; //修改model-ok的属性 $('.m
-
jQuery Ajax使用FormData对象上传文件的方法
FormData对象,是可以使用一系列的键值对来模拟一个完整的表单,然后使用XMLHttpRequest发送这个"表单". 在 Mozilla Developer 网站 使用FormData对象 有详尽的FormData对象使用说明. 但上传文件部分只有底层的XMLHttpRequest对象发送上传请求,那么怎么通过jQuery的Ajax上传呢? 本文将介绍通过jQuery使用FormData对象上传文件. 使用<form>表单初始化FormData对象方式上传文件 HTM
-
python bottle框架支持jquery ajax的RESTful风格的PUT和DELETE方法
这两天在用python的bottle框架开发后台管理系统,接口约定使用RESTful风格请求,前端使用jquery ajax与接口进行交互,使用POST与GET请求时都正常,而Request Method使用PUT或DELETE请求时,直接爆"HTTP Error 405: Method Not Allowed"错误.而ajax提交的Request Method值DELETE也变成了OPTIONS了. 度娘了好多答案,要么说是浏览器不支持,要么说自己重新封装jquery,还有其他的一些
-
django中使用jquery ajax post数据出现403错误的解决办法(两种方法)
在django中,使用jquery ajax post数据,会出现403的错误 方法一: 如果用jQuery来处理ajax的话,Django直接送了一段解决问题的代码.把它放在一个独立的js文件中,在html页面中都引入即可.注意这个js文件必须在jquery的js文件引入之后,再引入即可 $(document).ajaxSend(function(event, xhr, settings) { function getCookie(name) { var cookieValue = null;
-
jQuery.ajax向后台传递数组问题的解决方法
今天重温了一个问题,jQuery.ajax向后台传递一个数组,而在后台接收不到该值. 前台js方法部分代码如下: //创建一个测试数组 var boxIds = new Array(); boxIds.push(12182); boxIds.push(12183); boxIds.push(12184); //向后台交互 $.ajax({ url: "/xxx", type: "GET", data: { "boxIds": boxIds, &q
-
jquery ajax传递中文参数乱码问题及解决方法说明
jQuery传递中文参数乱码,原因是默认的传递方式没有采用UTF-8,所有我们可以在传递参数的时候对参数进行编码,然后再操作,代码如下,红色的代码为传递的参数,已标注 复制代码 代码如下: smsubmitclick = function(){ $(document).ready(function(){ var name = $("#txt_name").val(); var type = $("#seltype option:selected&q
-
解决jQuery ajax请求在IE6中莫名中断的问题
场景还原:给a标签绑定了一个click事件用来触发ajax请求,在IE6中,请求时常会被中断,在非IE6中都一切正常. <a href="javascript:;" id="btn">click me</a> <script type="text/javascript" src="jquery.js"></script> <script type="text/ja
-
解决jquery操作checkbox火狐下第二次无法勾选问题
最近在工作中使用jquery操作checkbox,使用下面方法进行全选.反选: 复制代码 代码如下: var ischecked=allCheckObj.is(':checked'); ischecked?checksObj.attr('checked',true):checksObj.attr('checked',false); 调试时在ie没有问题,考虑到兼容性,试试了firefox,遇到了问题.于是乎,做了如下实验: 复选框绑定了click事件,点一次选中,再点击取消选中,依次类推.这个功
随机推荐
- 关于angularJs指令的Scope(作用域)介绍
- Android实现二级列表购物车功能
- 气象 XML 数据源应用程序开发指南-简介
- JavaScript数组的栈方法与队列方法详解
- mybatis如何使用Java8的日期LocalDate和LocalDateTime详解
- svn服务器启动和svn服务器重启、停止等操作脚本分享
- js加入收藏以及使用Jquery更改透明度
- PHP清除数组中所有字符串两端空格的方法
- JS组件Bootstrap Table表格行拖拽效果实现代码
- C#图像处理之浮雕效果实现方法
- 简单的无缝滚动程序-仅几行代码
- CentOS系统下MongoDB安装及配置教程
- 超大数据量存储常用数据库分表分库算法总结
- formStorage 基于jquery的一个插件(存储表单中元素的状态到本地)
- JavaScript中的this关键字使用详解
- node.js中的fs.read方法使用说明
- 抽出www.templatemonster.com的鼠标悬停加载大图模板的代码
- linux下使用crontab实现定时PHP计划任务失败的原因分析
- 代理网站不能访问的解决办法
- Linux+php+apache+oracle环境搭建之CentOS下安装Apache