您好我正在使用extjs版本4.2.1
我有一个extjs网格,我通过从CSV文件中读取数据来填充
这是代码
var store1;
Ext.onReady(function() {
store1 = new Ext.data.JsonStore({
storeId: 'myStore1',
pageSize: 20,
proxy: {
type: 'ajax',
url:'loadGrid',
reader: {
type: 'json',
root: 'items'
}
},
fields: ['Code','Number','Labels']
});
var grid = Ext.create('Ext.grid.Panel', {
store: store1,
stateful: false,
layout:'fit',
enableColumnMove: true,
enableColumnResize:true,
columns: [
{
text : '<b>' + 'Code' + '</b>',
width:120,
sortable : true,
dataIndex: 'Code',
},
{
text : '<b>' + 'Serial Number' + '</b>',
width :120,
sortable : true,
dataIndex: 'Number'
},
{
text : '<b>' + 'Labels' + '</b>',
width :80,
sortable : true,
dataIndex: 'Labels'
},
{
text : '<b>' + 'ModCode' + '</b>',
width :120,
sortable : true,
dataIndex: 'test1'
},
{
text : '<b>' + 'Description' + '</b>',
width :175,
sortable : true,
dataIndex: 'test2'
},
{
text : '<b>' + 'Error' + '</b>',
width :160,
sortable : true,
dataIndex: 'test3'
}}
],
height: 350,
width: 920,
renderTo: 'csvGrid',
viewConfig: {
stripeRows: true,
enableTextSelection:true
}
});
store1.reload();});
**我想做什么**
如果匹配数据库表列'CustomerCode',我想验证网格列'Code',然后我想将网格行更改为Green 如果它与网格列代码值与数据库列值不匹配,即代码不存在,那么我想将网格行更改为红色
我怎么能这样做,请帮助我使用Grails 2.1.0&amp; extjs 4.2.1
答案 0 :(得分:1)
使用getRowClass
方法,并根据'Code'
值为行添加不同的类名。请参阅下面显示的代码。
viewConfig: {
getRowClass: function(record, rowIndex, rp, ds){
if(record.get('Code')=="CustomerCode"){
return 'row-green';
}
else {
return 'row-red';
}
}
},
<强> CSS 强>
.row-green{
background-color: green;
}
.row-red{
background-color: red;
}