Меню столбцов - отличная особенность Tabulator, и согласно документации, можно добавить их в любой столбец. К сожалению, я не могу добавить его в заголовок группы столбцов. Я делаю это неправильно или это (пока) не поддерживается? Фрагмент кода ниже демонстрирует поведение. Все столбцы, кроме Group1, получают меню.
Если оно не поддерживается, я склонен использовать решение из Tabulator - Добавить кнопку меню в заголовок столбца , но там я не вижу способа определить компонент столбца, к которому будет принадлежать меню при выполнении средства форматирования, что было бы необходимо, так как мне нужно было бы создавать пункты меню в динамически создаваемых табуляторах и столбцах в зависимости от данных столбца.
Есть предложения?
<link href="https://unpkg.com/tabulator-tables@4.6.2/dist/css/tabulator.min.css" rel="stylesheet"/>
<script src="https://unpkg.com/tabulator-tables@4.6.2/dist/js/tabulator.min.js"></script>
<div id="example-table"/>
<script>
var headerMenu = [
{
label:"<i class='fas fa-eye-slash'></i> Hide Column",
action:function(e, column){
column.hide();
}
},
{
label:"<i class='fas fa-arrows-alt'></i> Move Column",
action:function(e, column){
column.move("col");
}
}
]
//initialize table
var table = new Tabulator("#example-table", {
height:"311px",
layout:"fitColumns",
columns:[
{title:"Group1", headerMenu:headerMenu, columns:[
{title:"Name", field:"name", headerMenu:headerMenu},
{title:"Progress", field:"progress", hozAlign:"right", sorter:"number", headerMenu:headerMenu},]
},
{title:"Gender", field:"gender", headerMenu:headerMenu},
{title:"Rating", field:"rating", hozAlign:"center", headerMenu:headerMenu},
{title:"Favourite Color", field:"col", headerMenu:headerMenu}, //add menu to this column header
],
});
</script>