Как выделить строку вставленной сетки Extjs? - PullRequest
1 голос
/ 11 сентября 2011

Есть идеи, как выделить новую вставленную строку?

Я пытался использовать событие добавления магазина, и оно дает мне индекс записи и записи, который был последний раз вставлен.

, но как я могу сослаться на него?выделить строку сетки?

это магазин.

Ext.create('Ext.data.Store', {
    model   : 'invoice_model',
    storeId : 'invoice_store',
    proxy   : {
        type: 'memory'
    },
    listeners   : {
        add : function(s, r, i){
            console.log(r)  

        }
    }
});

С уважением

Ответы [ 2 ]

4 голосов
/ 12 сентября 2011

Предполагая, что "i" является индексом записи в сетке (следовательно, индекс строки в сетке):

    Ext.fly(myGrid.getView().getNode(i)).highlight("highlight color", {
            attr: 'color', duration: 5000 
        });

Однако, если вставленная запись всегда будет наПервая строка, вы можете просто указать первую после добавления записи:

    Ext.fly(myGrid.getView().getNode(0)).highlight("highlight color",{ 
              attr: 'color', duration: 5000 
          });

Чтобы выделить цвет фона строки, вы можете добавить класс подсветки для новой вставленной строки:

CSS:

   .myHighlight{
       background : your-highlight-color
   }

JS

   Ext.fly(myGrid.getView().getNode(0)).addCls("myHighlight");

и затем удалите его, как только вы закончите выделение:

  Ext.fly(grid.getView().getNode(0)).removeCls("myHighlight");
2 голосов
/ 11 сентября 2011

В вашей функции добавления попробуйтеExt.fly(myGrid.getView().getNode(r.getId())).highlight("0000ff", { attr: 'color', duration: 2 });

Измените конфигурацию выделения по своему вкусу

РЕДАКТИРОВАТЬ

Событие добавления магазина дает нам массив записей, которыебыли добавлены.Если вы хотите выделить все из них, выполните итерацию по массиву и вызовите приведенный выше фрагмент для каждой записи в массиве.если вы хотите выделить конкретный (возможно, первый или последний), получите его из массива и вызовите приведенный выше фрагмент.В приведенном выше фрагменте r относится к конкретной записи.

...