2011-12-22 1 views

ответ

0

Посмотрите на the old answer. Кажется, это именно то, что вам нужно.

+0

Было хорошее решение, но это не совсем то, что мне нужно. В моем случае у меня есть строки, которые должны быть с subgrid, и должны быть без subgrid в одной таблице. Существуют разные между ними только то, что в одних представлениях данных в subgrid в других нет. [Link] (http://a-venu.com/?s=&vn_city=&vn_state=&vn_venue_type=&vn_room_setup_type=&vn_guest_rooms_required=&vn_max_mtg_occupanccy=&vn_largest_mtg_rooms=&vn_total_room_sq_ft=&vn_length_minimum_ft=&vn_width_minimum_ft=&vn_height_minimum_ft=) демо, если вы прокрутите вниз, вы увидите 4 строки, которые не должны быть с subgrid – VaL

+0

BTW, я принимаю ваше решение для своей работы. Благодарю. Но все равно ждать ответа) – VaL

0

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

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(''); 
    }); 
} 

В этом коде я извлекал нажмите действия для расширения/свернуть подсети. Поэтому они всегда открыты и нет возможности их развалить.

Основано на this и удаляет пустые субгриды.

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

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