怎么解决jquery ajax不兼容ie8的问题

发布时间:2021-01-05 14:32:21 作者:小新
来源:亿速云 阅读:330

了解怎么解决jquery ajax不兼容ie8的问题?这个问题可能是我们日常学习或工作经常见到的,希望通过这个文章能让大家收获颇深,下面是小编给大家带来的参考内容,让我们一起来看看吧!

jquery ajax不兼容ie8的解决办法:首先打开相应的代码文件;然后使用JSON格式请求数据,其代码语句如“{foo:["bar1", "bar2"]}”。

关于jQuery的AJAX不兼容IE的解决办法

在使用jQuery的AJAX:get方法去检测数据是否存在时,会发现IE会出现不兼容的情况。

用AJAX:post方法时,使用Chrome/FireFox/IE均能出现正确的结果,但是在使用AJAX:get方法时,IE却不能返回正确的结果。

难道是数据超出了get方法的限制的长度,这个也不可能,我总共才传了一点点数据。排除。

网上一些网友说是IE缓存的问题,在请求数据后边加上随机数就行,比如加上时间数new Date().getTime()。

先前的代码中我已经添加了随机数,用的是“Math.random()”也不行。难道用时间比较靠谱?

那就改成获取时间试试,在参数后加“new Date().getTime()”后反复测试还是不行,真是百思不得其解!这个错误也排除了。

反复查看手册后发现请求的数据格式还是有一种JSON格式,如{foo:["bar1", "bar2"]} ,然后就按照这种格式书写,还真的返回了正确的查询结果。真不知道IE还有这点要求。(完)

先前的格式:

type: "get",
data: "bid="+my_bid+"&name_cn="+name_cn+"&timeStamp="+new Date().getTime(),

改进后格式:

type: "get",
data: {'bid':my_bid,'name_cn':name_cn,'timeStamp':new Date().getTime()},

在jQuery手册中是这样描述的:

data Object,String

发送到服务器的数据。将自动转换为请求字符串格式。GET 请求中将附加在 URL 后。

查看 processData 选项说明以禁止此自动转换。必须为 Key/Value 格式。

如果为数组,jQuery 将自动为不同值对应同一个名称。如 {foo:["bar1", "bar2"]} 转换为 "&foo=bar1&foo=bar2"。

代码片段:

var siteUrl="http://blog.sina.com.cn/cnwyt"; 
jQuery.ajax({
type: "get",
url: siteUrl+"cosmetics/product/ajax_check?",
//data: "bid="+my_bid+"&name_cn="+name_cn+"&timeStamp=" + new Date().getTime(),
data: {'bid':my_bid,'name_cn':name_cn,'timeStamp':new Date().getTime()},
dataType: 'json',
error: function (err) { alert('网络故障,请与管理员联系!') },
success: function (message) {
if(message!=false){
//ture的代码
}else{
//false的代码
}
});

感谢各位看完上述内容,你们对“怎么解决jquery ajax不兼容ie8的问题”这篇文章大概了解了吗?希望文章的内容对大家有所帮助,如果想了解更多相关文章内容,欢迎关注亿速云行业资讯频道。

推荐阅读:
  1. 关于jquery的$ajax不兼容ie的问题
  2. IE8不兼容rgba()如何解决

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

jquery ajax ie8浏览器

上一篇:怎么在Android中利用view绘制一个太极图

下一篇:vscommunity与vscode有哪些区别

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》