代码之家  ›  专栏  ›  技术社区  ›  fabien7474 Jan Tchärmän

:如何缓存Ajax响应(在用户下次选择选项卡时显示)?

  •  1
  • fabien7474 Jan Tchärmän  · 技术社区  · 15 年前

    我使用Ajax调用填充选项卡内容, tabs jquery UI库中的小部件。

    我的代码就是这样的:

    <script type="text/javascript">
        $(function() {
            $("#tabs").tabs({
                load: function(event, ui) { afterLoadProcessing(); }
            });
        });
    </script>
    ...
    <div id="tabs">
    <ul>
      <li><a href="url1">tab1</a></li>
      <li><a href="url2">tab2</a></li>
    </ul>
    </div>
    

    它工作得很好,每次单击选项卡时,选项卡内容都由Ajax调用的响应填充。

    我想缓存Ajax调用的响应,这样 我第二次点击 在选项卡上,它将直接显示最后一个响应(最终缓存)。

    有可能吗?(我确定是…)。如果是,最简单的方法是什么?(欢迎使用代码段)

    2 回复  |  直到 15 年前
        1
  •  4
  •   Reigel Gallarde    15 年前

    将缓存设置为真:

    $("#tabs").tabs({
        load: function(event, ui) { afterLoadProcessing(); },
        cache : true
    });
    

    reference

        2
  •  1
  •   tvanfosson    15 年前

    您可以在选项卡本身上指定缓存,或者使用AjaxOptions在AjaxCalls上指定缓存。我将尝试在选项卡上使用cache:true,以查看它是否首先有效,然后通过设置选项卡上的ajaxOptions选项指定ajax缓存。你可能两者都需要。