【问题标题】:Bootstrap popover with ajax requests带有 ajax 请求的引导弹出窗口
【发布时间】:2013-06-07 06:13:19
【问题描述】:

我有一些基本的 ajax 请求,Scroll Pagination 并准备好引导弹出窗口。 这是一个小代码:

            <a href="#" data-aka="popover" rel="popover" data-original-title="A Title 1">
                <dt id="<?php echo $item->post_date ?>">
                    <?php echo $avatar; ?>
                </dt>
                <dd><strong><?php echo $user->display_name; ?></strong><?php echo $content ?>.</dd>
            </a>



      <script>
 jQuery(function(){

jQuery('.sideUpdate').find('a[data-aka=popover]').popover({
html : true,
trigger: 'hover',
placement: 'left',
container: '.chatSidebar',
content: function() {
  return jQuery('#popover_content_wrapper').html();
}
});

});

      </script> 

这适用于 php 生成的代码,但不适用于附加的代码。我想我需要刷新我的 js 以包含新的锚点或类似的东西吗?

【问题讨论】:

  • 添加a[data-aka=popover]后需要再次初始化popover
  • 没有机会只使用一次脚本吗?
  • 不,没有办法,因为小部件必须在每个元素中初始化
  • 我明白了,我确实在插件 'afterLoad' 方法中对其进行了初始化,并且它起作用了。谢谢。您可以将其作为答案提交吗?
  • 作为答案提交

标签: ajax twitter-bootstrap popover


【解决方案1】:

实际上你可以在不重新初始化弹出框的情况下做到这一点:

jQuery('.sideUpdate').popover({
    html : true,
    trigger: 'hover',
    placement: 'left',
    container: '.chatSidebar',
    content: function() {
       return jQuery('#popover_content_wrapper').html();
    },
    selector: "a[data-aka=popover]"
});

注意selector 选项实际上类似于委托事件。

【讨论】:

  • 奇怪,但选择器选项对我不起作用,我使用的是 bootstrap v2.3.1
  • 您的.sideUpdate 是否也即时附加?如果是这样,请尝试使用持久性父元素
【解决方案2】:

添加a[data-aka=popover] 后,您需要再次初始化弹出框。

例如:

$('<a data-aka="dd"></a>').appendTo('container').popover({})

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多