Я понимаю, что я могу скрыть заголовок столбца сетки с помощью кода.
#gridid .x-grid3-hd-row { display:none; }
Но я не хочу использовать какое-либо изменение CSS. Как сделать то же самое с помощью JavaScript?
Я понимаю, что я могу скрыть заголовок столбца сетки с помощью кода.
#gridid .x-grid3-hd-row { display:none; }
Но я не хочу использовать какое-либо изменение CSS. Как сделать то же самое с помощью JavaScript?
вы можете сделать это легко, добавив это в Ext.grid.GridPanel следующим образом:
hideHeaders: true
Вы можете установить hideHeaders
вариант конфигурации GridPanel
на true
. Или вы имеете в виду после рендеринга сетки?
Отредактировано: Если вы хотите изменить (или отключить) способ создания заголовка, вы также можете переопределить renderHeaders
или updateHeaders
с GridView
. Другой способ - передать параметр templates
в GridView
, а значение header
установлено на пустой шаблон вместо значения по умолчанию:
ts.header = new Ext.Template(
'',
'{cells}',
'
'
);
Хотя реализация по умолчанию записывает заголовок в this.innerHd
, а innerHd
определяется как this.mainHd.dom.firstChild
, а this.mainHd
устанавливается в скрытое, если установлена опция hideHeaders
. Поэтому я ожидаю, что этот параметр повлияет и на заголовки столбцов.
Отредактировано: О какой версии ExtJS мы говорим? Я посмотрел на текущий источник, который, как я думаю, равен 3.1.
просто добавьте hideHeaders: true
в свою сетку. он должен работать
Вы можете добавить это в определение сетки:
listeners: {
render: function(grid) {
grid.getView().el.select('.x-grid3-header').setStyle('display', 'none');
}
},
Обычно вы получаете это, когда кладете свою сетку в панель.
Для меня css-хаки казались плохими, и только это сработало:
preventHeaders: true
См. свойство здесь, в документах.