繁体   English   中英

如何从extjs 4.2 grid获取行元素

[英]How to get row elements from extjs 4.2 grid

我在Extjs 4.2中有一个网格,我需要获取行元素,以便我可以比较行值,然后在特定行上调用.addCls()。 我试过.getNodes()但我不能在节点上调用.addCls()。

我已经使用表单字段执行此操作,但我也需要使用网格行:

myForm.getForm().getFields().items[i].getEl().dom

更新:这是我正在使用表单字段,我需要做一些类似网格单元格。 最初,我说我需要在网格行中添加一个类,但实际上我需要在网格单元格中添加一个类。

var myFormAItems = myFormA.getForm().getFields().items;
var myFormBItems = myFormB.getForm().getFields().items;

for (i = 0; i < prodItems.length; i++) {
   if (myFormAItems[i].getEl().dom.textContent != myFormBItems[i].getEl().dom.textContent) {
        myFormAItems[i].addCls('highlightDiff');
   };
}

您可以使用grid.getView().getNodes()来获取网格的行,然后使用query()获取<td>标记。

如果您只需要应用自定义类,则更简单:

您可以为网格中的每一行添加CSS类,从网格视图覆盖函数getRowClass() 网格配置中的选项viewConfig用于此目的。

Ext.create('Ext.grid.Panel', {
    // other options
    viewConfig: {
        getRowClass: function(record, rowIndex, rowParams, store){
            if (record.get('property') == 'value'){
                return 'my-custom-class';
            }
        }
    }
});

请检查这个小提琴

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM