Available only in PRO Edition
Меню для хедера таблицы Datatable используется для того, чтобы показывать или скрывать колонки таблицы. Меню - это выпадающий список названий колонок, который открывается по клику правой кнопкой мыши.
Чтобы добавить меню, задайте headermenu:true в настройках DataTable. Как выглядит и работает такое меню:
{
view:"datatable",
columns:[/*настройки колонок*/],
headermenu:true
}
Related sample: Header Menu in the DataTable
Меню можно настроить, если задать его как объект с настройками:
Широкое меню с вертикальной полосой прокрутки
{
view:"datatable",
columns:[/* настройки колонок */],
headermenu:{
width:250,
autoheight:false,
scroll:true
}
}
Related sample: Datatable: Extended Header Menu
Меню для отдельных колонок
{
view:"datatable",
columns:[/* настройки колонок */],
headermenu:{
data:[
{ id:"year", value:"Released"},
{ id:"rating", value:"Rating"}
]
}
}
Related sample: Datatable: Extended Header Menu
Исключение конкретной колонки из меню
Чтобы не показывать какую-то колонку в меню, задайте в настройках колонки headermenu:false:
{
view:"datatable",
headermenu:true, // добавляем меню
columns:[
// не показываем в меню колонку "id"
{id:"id", header:"#", headermenu:false},
{id:"title", header:"Title"}
]
}
Меню можно показывать и по клику левой кнопкой мыши по специально созданной для этого колонке таблицы. Добавьте content:"headerMenu" в настройки колонки:
{
view:"datatable",
columns:[
{
header:{ content:"headerMenu" },
headermenu:false,
width:35
}
]
}
Related sample: Header Menu Icon in the DataTable
Для такой колонки можно не задавать свойство headermenu.
Свойство content можно также использовать для добавления фильтров и группировки колонок.
У меню, как и у всякого другого компонента Webix, есть уникальное ID. Получить его можно из config.headermenu таблицы, для которой задано меню. ID позволяет вам получить доступ к методам меню, например к методу show.
webix.ui({
rows:[
{
view:"button",
width:170,
value:"Open header menu",
click:function(){
showMenu(this.$view);
}
},
{
view:"datatable",
id:"dt2",
columns:[/* настройки колонок */],
headermenu:true
}
]
});
//показывает меню с помощью его API
function showMenu(node){
var menu = $$("dt2").config.headermenu;
$$(menu).show(node);
}
Related sample: Header Menu Icon in the DataTable
Наверх