jqGrid, как я могу скрыть подсеть, если она пустая? - PullRequest
0 голосов
/ 22 декабря 2011

Как я могу скрыть подсеть, если она пустая?Я пробовал это решение и это , но не повезло.

Ответы [ 2 ]

0 голосов
/ 23 декабря 2011

На основании этого и ответа Олега я решаю свою проблему.В моей таблице все строки раскрыты, поэтому код для основной таблицы выглядит следующим образом:

gridComplete: function(){
   var table_name = 'table_18';
   var myGrid = $('#'+table_name);
   var rowIds = myGrid.getDataIDs();
   $.each(rowIds, function (index, rowId){
          myGrid.expandSubGridRow(rowId);
   });

   var subGridCells = $("td.sgexpanded",myGrid[0]);
   $.each(subGridCells,function(i,value){
          $(value).unbind('click').html('');
   });
}

В этом коде я удалил действие click для раскрывающихся / свернутых подсеток.Таким образом, они всегда открыты и нет возможности их свернуть.

На основании это я удаляю пустые подсетки.

loadComplete: function(){//in subgrid 
        var table_value = $('#'+subgrid_table_id).getGridParam('records');
        if(table_value === 0){
            $('#'+subgrid_id).parent().parent().remove();
        }
}

Возможно, существует более простое и элегантное решение, но для меня это работает, как я ожидал.

0 голосов
/ 22 декабря 2011

Посмотрите на старый ответ . Кажется, это именно то, что вам нужно.

...