我可以通过 ajax 加载 JQuery 选项卡而不是在选项卡切换时中止吗?

发布于 2024-12-03 12:34:57 字数 401 浏览 0 评论 0原文

我正在使用 JQuery UI 选项卡通过 ajax 加载内容,如下所示:

$('#tabsElem').tabs({ajaxOptions:{cache:false},
                     cache:true);

考虑这一系列事件:

  1. 显示选项卡。
  2. 发出 ajax 请求时会显示加载图标。
  3. 用户选择另一个选项卡。
  4. ajax 请求尚未返回,因此被中止。
  5. 用户返回到原始选项卡。
  6. 选项卡的内容现在为空,并且由于缓存而不会重新发送 ajax 请求。

我想你可以看到最后一部分是有问题的。我研究了几个选项,但还没有什么感觉很好的。有什么漂亮的解决方案吗?

I'm using JQuery UI tabs loading content via ajax like this:

$('#tabsElem').tabs({ajaxOptions:{cache:false},
                     cache:true);

Consider this series of events:

  1. Tabs are displayed.
  2. A loading icon is shown while an ajax request is made.
  3. The user selects another tab.
  4. The ajax request hadn't returned yet so it is aborted.
  5. The user returns to the original tab.
  6. The tab's content is now empty and the ajax request will not be resent because of the caching.

I think you can see that last part is a problem. I've looked into a few options but nothing feels great yet. Any beautiful solutions out there?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

我偏爱纯白色 2024-12-10 12:34:57

事实证明,解决方案是更新您的 JQuery UI 版本。

我描述的结果发生在版本 1.8.6 上。在版本 1.8.16 上,当您返回到原始选项卡时,会再次发出已中止的 ajax 请求。

感谢 jQuery

Turns out the solution is to update your version of JQuery UI.

The results I described happen on version 1.8.6. On version 1.8.16 when you go back to the original tab the aborted ajax request is made again.

Thanks JQuery

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文