Если вы создадите jqGrid без строки заголовка (caption: ""
) и изучите сетку с точки зрения инструментов разработчика или Firebug, вы увидите <div>
с классом "ui-jqgrid-titlebar", имеющим <span>
с классом "ui-jqgrid-title" и якорем с классом "ui-jqgrid-titlebar-close" в качестве дочерних элементов:
<div id="gbox_list" class="ui-jqgrid ui-widget ui-widget-content ui-corner-all">
...
<div id="gview_list" class="ui-jqgrid-view">
<div style="display: none;"
class="ui-jqgrid-titlebar ui-widget-header ui-corner-top ui-helper-clearfix">
<a style="right: 0px;" class="ui-jqgrid-titlebar-close HeaderButton"
role="link" href="javascript:void(0)">
<span class="ui-icon ui-icon-circle-triangle-n"></span>
</a>
<span class="ui-jqgrid-title"></span>
</div>
...
Таким образом, даже вы создаете сетку без строки заголовкаjqGrid создать все скрытые элементы строки заголовка .
Я просмотрел код jqGrid, в котором создается заголовок, и смог найти следующий фрагмент
if(ts.p.caption) {
...
$(".ui-jqgrid-titlebar-close",grid.cDiv).click( function(e){
...
} else {$(grid.cDiv).hide();}
получить те же результаты, что и для сетки, инициализированной параметром caption: ""
, который вы можете выполнить, следуя инструкциям
var mygrid = jQuery('#list'),
cDiv = mygrid[0].grid.cDiv;
mygrid.setCaption("");
$("a.ui-jqgrid-titlebar-close",cDiv).unbind();
$(cDiv).hide();
Разблокирование с помощью кнопки сворачивания следует выполнять только в том случае, если вы уверены, что сетка не будет иметь заголовка (caption
) позже.Привязки занимали меньше ресурсов и ничего не делали для скрытой сетки.
Так что предложение Правата Маски просто скрыть название абсолютно верно, и мои исследования только подтверждают это.