当ajax load popover用hide()关闭时,popover按钮再单击一次

时间:2013-12-27 05:28:32

标签: jquery twitter-bootstrap-3

当我点击弹出按钮时,效果很好 当我关闭popover单击标题部分上的x时,弹出按钮dees不起作用。 我需要再点击一次popover。

工作代码(http://www.opencode.co.kr/popover_test.php

我使用mcianni的代码。
http://blog.2doconsulting.com/blog/2012/03/15/loading-the-content-for-a-bootstrap-popover-via-ajax/)  和(http://jsfiddle.net/kAYyR/3/

<!DOCTYPE HTML>
<html lang="ko">
<head>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="content-type" content="text/html; charset=euc-kr">

<title>OpenCode</title>

<link rel="stylesheet" href="http://opencode.co.kr/js/bootstrap/css/bootstrap.min.css?bver=1000" type="text/css" media="screen" title="no title" charset="euc-kr">
<link rel="stylesheet" href="http://opencode.co.kr/js/font-awesome/css/font-awesome.min.css?aver=1000" type="text/css" media="screen" title="no title" charset="euc-kr"> 

<!--[if lt IE 7]>
    <script src="http://opencode.co.kr/js/font-awesome/css/font-awesome-ie7.min.js"></script>
<![endif]-->
<link rel="stylesheet" href="http://opencode.co.kr/style.css?sver=2110" type="text/css">

<script src="http://code.jquery.com/jquery-1.10.1.min.js"></script>
<script type="text/javascript" src="http://opencode.co.kr/js/bootstrap/js/bootstrap.min.js"></script>

<body>
<br><br>
<a class="btn btn-default sideview">popover</a>
<a class="btn btn-default sideview" alt="test12">popover</a>

<script>
$(document).ready(function() {
      $('.sideview').popover({
        content: "aa",
        title: 'Sideview&nbsp;<a onclick="$(this).parent().parent().hide();" style="cursor:pointer"><i class="fa fa-times-circle"></i></a>',
        html: true,
      }).popover('show');
});
</script>
</body>
</html>

1 个答案:

答案 0 :(得分:1)

我认为这应该有所帮助:

onclick="$('.sideview').popover('hide')"

如果您使用popover展示,则应使用popover隐藏它。

修改

以上解决方案在您的情况下不起作用,我找到的唯一方法是:

var index = 0;

$('.sideview').each(function(i, el) {
     var id = index++;

     $(el).popover({
         content: "aa",
         title: 'Sideview&nbsp;<a style="cursor:pointer" id="a'+id+'">x</a>',
         html: true
     });

     $(document).on('click', '#a' + id, function() {
         $(el).popover('toggle');
     });
});

DEMO