BS5 - 更改allowList以允许弹出窗口中的表、tr、td

问题描述 投票:0回答:1

不太确定我在这里做错了什么。 我想在弹出窗口中显示表格。 我将 table、tr、td 添加到allowList,但弹出窗口仍然显示空白。

弹出窗口本身工作正常,但在向其中添加表格的情况下(如我的示例),它显示为空白,这让我相信我执行allowList的方式是错误的。

使用新的allowList选项初始化所有弹出窗口:

var myDefaultAllowList = bootstrap.Popover.Default.allowList;
//to allow elements and attributes on elements
//myDefaultAllowList.input = ['type', 'checked']; //extra allow example
myDefaultAllowList.table = [];
myDefaultAllowList.tr = [];
myDefaultAllowList.td = [];

let popoverTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle="popover"]'))
let popoverList = popoverTriggerList.map(function (popoverTriggerEl) {
    return new bootstrap.Popover(popoverTriggerEl, { allowList: myDefaultAllowList, html: true });
});

弹出 html 示例:

<a data-bs-toggle="popover" data-bs-placement="right" data-bs-trigger="hover" data-bs-content="<table><tr><td>testing</td></tr></table>">popover example</a>
bootstrap-5
1个回答
0
投票

发现问题的发生纯属偶然。

myDefaultAllowList.tbody = [];
需要添加到allowList中。 尽管我没有在代码中使用它,但无论出于何种原因,当我将它添加到allowList 时它都会起作用。 在引导程序方面必须对多个允许的元素进行某种“检查” - 即,如果不允许 tbody,则 table、tr、td 等也不允许。

© www.soinside.com 2019 - 2024. All rights reserved.