首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何通过Javascript在Popover (Bootstap)中添加Html标记(如<button>)

如何通过Javascript在Popover (Bootstap)中添加Html标记(如<button>)
EN

Stack Overflow用户
提问于 2020-10-25 07:50:12
回答 2查看 1.2K关注 0票数 3

我用的是Bootstrap。我想在弹出框里有个按钮。以前很好,但现在不行了。

代码语言:javascript
复制
<button type="button" class="btn btn-primary mx-2" id="pop" data-container="body" data-toggle="popover" data-placement="bottom" data-html="true" data-content="">
  Button
</button>

Javascript:

代码语言:javascript
复制
function updatePopover() {
    var popStr = "";
    popStr = popStr + "<h5> Heading :  </h5><div class='mx-2 my-2'>";
    popStr = popStr + "<button class='btn btn-success' onclick='function()' id ='funcid'>Button</button>"
    document.getElementById('pop').setAttribute('data-content', popStr);
    $('#popcart').popover('hide');

}
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-10-25 08:30:32

简单地说,您可以执行以下操作:

代码语言:javascript
复制
var dynamicData = ['Dynamic Data', 'Dynamic Data', 'Dynamic Data', 'Dynamic Data'];

$('[data-toggle="popover"]').popover({
    title: "<h5>Heading</h5>",
    content: function () {
        var resultData = $(`<div><ul class="list-group">`);
        for (var i in dynamicData) {
            resultData = resultData.add(
                `<li class="list-group-item d-flex justify-content-between align-items-center">
                    `+ dynamicData[i] + `
                    <span class="badge badge-primary badge-pill">`+ i + `</span>
                </li>`
            );
            // console.log(i, dynamicData[i]);
        }

        resultData = resultData.add(`</ul><br/><button class='btn btn-danger' id ='funcid'>Close</button></div>`);

        return resultData;
    }
});

$(document).on("click", "#funcid", function () {
    $(this).parents(".popover").popover('hide');
});
代码语言:javascript
复制
.popover-body {
    width: 200px;
}
代码语言:javascript
复制
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js"
    integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN"
    crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js"
    integrity="sha384-ApNbgh9B+Y1QKtv3Rn7W3mgPxhU9K/ScQsAP7hUibX39j7fakFPskvXusvfa0b4Q"
    crossorigin="anonymous"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js"
    integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl"
    crossorigin="anonymous"></script>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css"
    integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">
    
<button type="button" class="btn btn-primary mx-2" data-toggle="popover" data-placement="bottom" data-html="true">
    Button
</button>

票数 1
EN

Stack Overflow用户

发布于 2020-10-25 08:07:12

你提供的代码被破坏了。你把"忘在了

代码语言:javascript
复制
popStr = popStr + "<button class='btn btn-success' onclick='function()' id ='funcid'>Button</button>"

你能试试吗,看看它是否解决了你的问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64521505

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档