Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/442.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 单击带有动态内容的按钮创建引导弹出窗口,再次单击时关闭_Javascript_Jquery_Html_Twitter Bootstrap - Fatal编程技术网

Javascript 单击带有动态内容的按钮创建引导弹出窗口,再次单击时关闭

Javascript 单击带有动态内容的按钮创建引导弹出窗口,再次单击时关闭,javascript,jquery,html,twitter-bootstrap,Javascript,Jquery,Html,Twitter Bootstrap,我有一个页面,其中有一个jquery网格和一个带有和图标的链接。我需要显示一个popover,并在popover中显示一个表单。但是,当用户单击另一个链接(应该出现另一个popover)或页面上除popover之外的任何其他位置时,popover应该关闭 我编写的当前代码不起作用 当前代码: 链接的HTML代码(此div是网格中的一列,每行的rowid将不同): Javascript代码: $('#grid-table').on('click','.editRow',function(e){

我有一个页面,其中有一个jquery网格和一个带有和图标的链接。我需要显示一个popover,并在popover中显示一个表单。但是,当用户单击另一个链接(应该出现另一个popover)或页面上除popover之外的任何其他位置时,popover应该关闭

我编写的当前代码不起作用

当前代码:

链接的HTML代码(此div是网格中的一列,每行的rowid将不同):


Javascript代码:

$('#grid-table').on('click','.editRow',function(e){
    $(this).popover({
        html: true,
        title: 'Popover Title<a class="close" href="#">&times;</a>',
        content: '<a>This one works fine!!</a>' //Content can change based on rowId
    });
    $(this).popover('show');
    e.stopPropagation();
    $('body').click(function (e) {
        if (($('.popover').has(e.target).length == 0) || $(e.target).is('.close')) {
            $(this).popover('hide');
        }
    });
});
$(“#网格表”)。在('click','editRow',函数(e)上{
$(这个)({
是的,
标题:“Popover标题”,
content:'这个很好!!'//内容可以根据rowId进行更改
});
$(this.popover('show');
e、 停止传播();
$('body')。单击(函数(e){
if($('.popover').has(e.target).length==0)| |$(e.target).is('.close')){
$(this.popover('hide');
}
});
});

您应该在
之外编写以下代码。editRow
单击事件:

$('body').click(function (e) {
        if (($('.popover').has(e.target).length == 0) || $(e.target).is('.close')) {
            $(this).popover('hide');
        }
    });

实际上,网格表div是使用ajax调用加载的,可能有一个场景,.popover或.editRow在当时不可用。在将此代码放到.editRow click事件外部后,它甚至没有显示弹出窗口。请对此进行修改,好吗?
$('body').click(function (e) {
        if (($('.popover').has(e.target).length == 0) || $(e.target).is('.close')) {
            $(this).popover('hide');
        }
    });