打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
jquery里的缓存问题如何解决?AJAX面试题

jquery里的缓存问题如何解决?AJAX面试题

如果直接用jQuery里的$.ajax()方法的话,去除缓存很简单,只需要配置一下缓存属性cache为false,但如果想要简单写法getJSON(),去除缓存就不能通过配置来解决了。因为getJSON根本没有这个缓存属性让你来配置。因为如果其调用的地址URL和之前的一样的话,回调函数会直接在缓存里面读取数据,而不是进后台调用相应的方法。
解决方法就是让他的每次请求的URL地址不一样就行,但是同时又要不影响请求的服务所需要的数据,那么可以有一下几种方法:
1、$.getJSON(“URL?t=”+new Date(),function(json){});就是原有的URL基础上加一个时间变量,每次的请求地址就不一样了。
2、$.getJSON(“URL?rand=”+Math.random,function(json){});就是原有的URL基础上加上一个随机变量,不过这个方法有风险,万一随机数一样。。。。。。
3、第三种方法就是自己定义一个递增变量,在URL后面加上这个递增变量,每次请求完后,就递增一下。
$.get()去除缓存的方法和$.getJSON()相同。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
Jquery $.getJSON 在IE下的缓存问题解决方法
Jquery面试题总结
jQuery怎么解析Json字符串(Json格式/Json对象)
jQuery 在ajax回调函数中使用$(this)无效不起作的的解决方法
【Jquery】jquery刷新页面(局部及全页面刷新)
jquery生成select option
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服