我使用jQuery的$.ajax()
方法来发布基于XHR的HTTP GET以从Ruby on Rails站点检索部分HTML。在这种特殊情况下,无论何时使用点击标签导航,我都会使用从服务器返回的数据更新HTML表格。问题是,一旦数据在服务器上可用,它就永远不会改变。当用户从一个标签点击到下一个标签时,它不必要地向服务器发出更多的XHR请求,以获取它应该已经拥有和/或被缓存的数据。我尝试使用cache: true
属性,但我认为这不像我认为的那样。这里是我的脚本的例子:jQuery ajax缓存响应
$.ajax({
url: "/nba/value_charts/" + site_id + "/" + t_date,
cache: true
})
.done(function(html) {
$("#vr").html(html)
$(".value-charts").tablesorter();
});
有什么我可以这样做,当标签被重新点击它使用HTML在它之前进账至少直到用户刷新页面?如果缓存不存在,它只应该发出XHR请求。这是目前内置jQuery的,还是我必须编写自己的逻辑来工作?
使用缓存:真不停止的情况发生的要求,它只是让浏览器缓存响应。如果您想阻止它再次发送请求,则必须手动执行此操作。 –