需要通过Ajax加载jQuery UI Tabs动态内容链接

发布于 2024-10-06 17:05:10 字数 1203 浏览 5 评论 0原文

我有这个 jQuery UI 选项卡模型,只有 2 个选项卡,我需要通过 Ajax 加载内容。问题是这些选项卡是在 jQuery UI 对话框中加载的,并且 mid 是动态的。我的意思是,该对话框是通过单击链接(其中包含 mid=X)启动的。

代码是这样的:

Javascript:

$('.item-movie-link').each(function() {
    $(this).parent().click(function() {
        $('#tabs-movie li a[href$=info]').attr('href', $(this).attr('href') + '&op=info');
        $('#tabs-movie li a[href$=cast]').attr('href', $(this).attr('href') + '&op=cast');

        $('#dialog-movie-info').dialog('open');
        $('#tabs-movie').tabs();

        return false;
    });
});

HTML:

<div id="dialog-movie-info">
  <div id="tabs-movie">
    <ul>
      <li><a href="#tab-info"><img src="template/images/icon-tab-movie-info.png" alt="" />Information</a></li>
      <li><a href="#tab-cast"><img src="template/images/icon-tab-movie-cast.png" alt="" />Cast List</a></li>
    </ul>
  </div>
</div>

当我第一次单击其中一个 .item-movie-link 时,它会起作用,但关闭对话框并单击另一个链接后,它将不起作用,将显示相同的信息。

我怎样才能做到这一点?也许有更好的方法?

I have this jQuery UI Tabs model with only 2 tabs and I need the content to load through Ajax. The problem is that these tabs are loaded inside a jQuery UI Dialog and mid is dynamic. I mean, the dialog is launched by clicking a link (which contains mid=X).

The code is something like this:

Javascript:

$('.item-movie-link').each(function() {
    $(this).parent().click(function() {
        $('#tabs-movie li a[href$=info]').attr('href', $(this).attr('href') + '&op=info');
        $('#tabs-movie li a[href$=cast]').attr('href', $(this).attr('href') + '&op=cast');

        $('#dialog-movie-info').dialog('open');
        $('#tabs-movie').tabs();

        return false;
    });
});

HTML:

<div id="dialog-movie-info">
  <div id="tabs-movie">
    <ul>
      <li><a href="#tab-info"><img src="template/images/icon-tab-movie-info.png" alt="" />Information</a></li>
      <li><a href="#tab-cast"><img src="template/images/icon-tab-movie-cast.png" alt="" />Cast List</a></li>
    </ul>
  </div>
</div>

This works when I first click one of those .item-movie-link's, but after closing the dialog and clicking another link, it will not work, the same information will be displayed.

How can I make this work? Maybe there's a better approach for this?

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

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

发布评论

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

评论(1

盛夏已如深秋| 2024-10-13 17:05:10

我的问题通过销毁 jQuery UI 对话框的 close 事件上的 jQuery UI 选项卡得到解决:

$('#tabs-movie').tabs('destroy');

My problem was fixed by destroying the jQuery UI Tabs on the close event of the jQuery UI Dialog:

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