свернуть строкуРазвернуть - PullRequest
1 голос
/ 30 ноября 2011

Я использую Extjs 4. У меня есть сетка в расширителе строк с данными с сервера, но когда я сортирую родительскую сетку, вложенная сетка исчезает. Поэтому я хочу свернуть все расширители строк при сортировке.
Как я могу сделатьтот?спасибо

Это моя сетка:

   var grid = new Ext.grid.GridPanel({
       store: store,
       columns: [
           { header: 'Customer Name', dataIndex: 'CustomerName', width: 212, align: 'center' },
           { header: 'Charge Date', dataIndex: 'ChargeDate', width: 212, align: 'center' },
           { header: 'Package Plan', dataIndex: 'PackagePlan', width: 212, align: 'center' },
           { header: 'Current Invoice Sum', dataIndex: 'InvoiceSum', width: 212, align: 'center' }
       ],
       plugins: [{
           ptype: 'rowexpander',
           rowBodyTpl: ['<div style="background-color:#CBDDF3; width:643px;margin-left:147px;margin-bottom: 20px;border: 1px solid;" id="excharge">',
                        '<p><b>Customer Details:</b><br/>{CustomerName}<br/> {CustomerAddress}, {CustomerPhone}, <span class="email">{CustomerEmail}</span> </p>',
                        '<p><b>Package Type:</b> {PackagePlan}<br/>',
                        '<b>Invoice Details:</b></p>',
                        '<div class="nestedO" id="{InvoiceId}"></div> </div>',
           ]
       }],
       width: 900,
       height: 450,
       collapsible: true,
       renderTo: Ext.get('Ongoing')
   });

И когда расширитель строк, я добавляю сетку в div, класс которого 'nestedO'.

1 Ответ

1 голос
/ 04 декабря 2011

Мне удалось добавить это в код сетки:

listeners: {
                sortchange: function (ct, column, direction) {
                    $(".x-grid-row").each(function(){$(this).addClass("x-grid-row-collapsed");});
                    $(".x-grid-rowbody-tr").each(function(){$(this).addClass("x-grid-row-body-hidden");});
                }
            },
...