如何突出显示 Extjs 网格新插入的行?

Gih*_*ita 2 javascript extjs extjs4

知道如何突出显示新插入的行吗?

我尝试使用商店的添加事件,它给了我最后插入的记录和记录索引。

但是我如何引用它来突出显示网格行?

这是商店。

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

        }
    }
});
Run Code Online (Sandbox Code Playgroud)

问候

Ric*_*d A 5

假设“i”是网格上记录的索引(因此,网格中行的索引):

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

但是,如果插入的记录总是在第一行,您可以在添加记录后指定第一行:

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

要突出显示行的背景颜色,您可以向新插入的行添加一个突出显示类:

CSS :

   .myHighlight{
       background : your-highlight-color
   }
Run Code Online (Sandbox Code Playgroud)

JS

   Ext.fly(myGrid.getView().getNode(0)).addCls("myHighlight");
Run Code Online (Sandbox Code Playgroud)

然后在完成突出显示后将其删除:

  Ext.fly(grid.getView().getNode(0)).removeCls("myHighlight");
Run Code Online (Sandbox Code Playgroud)