【问题标题】:JqueryUi - Tabs / Ajax Content / jqueryui.com/demosJqueryUi - 选项卡/Ajax 内容/jqueryui.com/demos
【发布时间】:2012-05-08 05:28:41
【问题描述】:

我不知道跟随 ajax 是如何工作的,(来自http://jqueryui.com/demos/tabs/ajax.html

<li class="ui-state-default ui-corner-top"><a
href="http://jqueryui.com/demos/tabs/ajax.html#ui-tabs-1">Tab 1</a>
</li>
<li class="ui-state-default ui-corner-top"><a
href="http://jqueryui.com/demos/tabs/ajax.html#ui-tabs-2">Tab 2</a>
</li>
<li class="ui-state-default ui-corner-top"><a
href="http://jqueryui.com/demos/tabs/ajax.html#ui-tabs-3">Tab 3(slow)</a>
</li>
<li class="ui-state-default ui-corner-top"><a
href="http://jqueryui.com/demos/tabs/ajax.html#ui-tabs-4">Tab 4(broken)</a>
</li>

.....

<div id="ui-tabs-1"
class="ui-tabs-panel ui-widget-content ui-corner-bottom ui-tabs-hide"></div>
<div id="ui-tabs-2"
class="ui-tabs-panel ui-widget-content ui-corner-bottom ui-tabs-hide"></div>

当点击例如Tab 2时,转到“http://jqueryui.com/demos/tabs/ajax.html#ui-tabs-2”,这是一个空的div,那么后台代码(例如 PHP)确实得到了 #ui-tabs-2 并返回 http://jqueryui.com/demos/tabs/ajax/content2.html 谢谢

【问题讨论】:

  • 在那个演示中它真的很简单,他们没有为标签 2-4 创建一个 div,只有一个 li(标签本身,而不是面板)。 li 内部是一个链接元素,其中包含要放入面板的页面的 href,因此当单击页面时,通过 ajax“自动魔术”将页面加载到选项卡中

标签: ajax jquery-ui tabs


【解决方案1】:

您添加的代码sn-p与http://jqueryui.com/demos/tabs/ajax.html的示例页面不符

它应该看起来像:

<div id="tabs">
<ul>
    <li><a href="#tabs-1">Preloaded</a></li>
    <li><a href="ajax/content1.html">Tab 1</a></li>
    <li><a href="ajax/content2.html">Tab 2</a></li>
    <li><a href="ajax/content3-slow.php">Tab 3 (slow)</a></li>
    <li><a href="ajax/content4-broken.php">Tab 4 (broken)</a></li>
</ul>
<div id="tabs-1">
    <p>Proin elit arcu, rutrum commodo...</p>
</div>
</div>

第一个选项卡不是 ajax 选项卡。其他选项卡通过 ajax 动态加载。 href 确定 ajax fetch 的目标内容。

【讨论】:

  • 感谢您的回答,但如果您检查元素“Tab 2”,您会得到
  • Tab 2
  • href 是“#ui-tabs-2”,除此之外,能否请您指出调用了哪个函数来加载内容,非常感谢
  • 当您使用某种检查工具(例如 Firebug)检查选项卡时,您会在 ajax 获取后看到更新的标签。 jQuery 动态读取远程内容并将其添加到 DOM,然后相应地更新标签。
  • 谢谢你,我是菜鸟,我对“ajax fetch 后更新标签”感到困惑,有什么可以参考的例子吗?我保存了整个页面并得到了与我指出的相同的href。然后我将
  • Tab 2
  • 放入我自己的测试中,然后检查它,然后我仍然看到我放入 herf 的相同内容跨度>
  • jQuery 在浏览器中查看/运行页面时会更新 DOM,而您在检查页面时会看到最后更新的 DOM。这是一般情况,但我没有足够的数据来说明您身边发生了什么。
  • 猜你喜欢
    相关资源
    最近更新 更多
    热门标签