jQuery技术

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

字号+ 作者:H5之家 来源:H5之家 2015-10-15 12:21 我要评论( )

AJAX面试题笔试题:如果直接用jQuery里的$.ajax()方法的话,去除缓存很简单,只需要配置一下缓存属性cache为false,但如果想要简单写法getJSON(),去除缓存就不能

如果直接用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()相同。

 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • Tab页界面,用jQuery及Ajax技术实现

    Tab页界面,用jQuery及Ajax技术实现

    2016-02-06 08:16

  • 我在学习ASP.NET AJAX,这个是不是过时了,微软不再更新了,是不

    我在学习ASP.NET AJAX,这个是不是过时了,微软不再更新了,是不

    2016-01-18 18:14

  • Jquery学习,一道笔试题:关于表格【最近记】

    Jquery学习,一道笔试题:关于表格【最近记】

    2016-01-18 11:02

  • Thinkphp 结合Jquery Ajax技术实现无刷新查询

    Thinkphp 结合Jquery Ajax技术实现无刷新查询

    2016-01-15 13:09

网友点评
l