2014-01-08 4 views
0

У меня есть панель с панелью extJs (3.0), которая загружается из базы данных postgresql с помощью json. Это моя сетка сегмент кода панель:ExtJs 3: Изменение цвета фона ячейки сетки

var drop_pick_grid = new Ext.grid.GridPanel({ 
store : dropPickGridStore, 
cm : new Ext.grid.ColumnModel([ selectModel, { 
    sortable : true, 
    header : "Drop/Pick Loc", 
    dataIndex : 'locationName', 
    width : 170 
}, { 
    header : "Town/City", 
    sortable : true, 
    dataIndex : 'city', 
    width : 120 
}, { 
    header : "Address", 
    sortable : true, 
    dataIndex : 'addr', 
    width : 170 
}, { 
    header : "EST.Un/Load Time", 
    sortable : true, 
    dataIndex : 'estimatedTime', 
    width : 100 
} ]), 
sm : selectModel, 
/*viewConfig: { 
    getRowClass: function(record, index) { 
     var color = record.get('tourTypeColor'); 
     if (c == 'Kandy') { 
      alert('Kandy'); 
     } 
    } 
},*/ 
//width : 570, 
//height : 390, 
autoHeight : true, 
autoWidth : true, 
frame : true, 
iconCls : 'icon-grid', 
renderTo : document.body 
}); 

Мои Json данные:

{'dropPickLoc':[{ 'locationName' : 'Gayan Hardware', 'city' : 'Galle', 'addr' : '121, Wijaya Rd, Galle', 'estimatedTime' : '120', 'tourTypeColor' : 'blue' } , { 'locationName' : 'Kandy Hardware', 'city' : 'Kandy', 'addr' : '11, Kurunagala Road, Kandy', 'estimatedTime' : '40', 'tourTypeColor' : 'blue' } , { 'locationName' : 'Mala Stores', 'city' : 'Colombo', 'addr' : '11B, Thimbirigasyaya, Colombo', 'estimatedTime' : '45', 'tourTypeColor' : 'yellow' } , { 'locationName' : 'Namal Ceramic', 'city' : 'Kurunagala', 'addr' : '12B, Lumbini Udyanaya, Kurinagala', 'estimatedTime' : '45', 'tourTypeColor' : 'yellow' } , { 'locationName' : 'Priya Ceramic', 'city' : 'Nugegoda', 'addr' : '15, Nugegoda', 'estimatedTime' : '40', 'tourTypeColor' : 'yellow' } , { 'locationName' : 'Sam Stores', 'city' : 'Galle', 'addr' : '46A, Galle', 'estimatedTime' : '120', 'tourTypeColor' : 'green' } , { 'locationName' : 'Saman Stores', 'city' : 'Polgahawela', 'addr' : '111, Kurunagala Rd, Kurunagala', 'estimatedTime' : '120', 'tourTypeColor' : 'blue' } , { 'locationName' : 'Sell-X Computors', 'city' : 'Ratnapura', 'addr' : '12, Tiriwanakatiya, Ratnapura', 'estimatedTime' : '120', 'tourTypeColor' : 'green' } , { 'locationName' : 'Super Stores', 'city' : 'Kandy', 'addr' : '16, Kandy Road', 'estimatedTime' : '120', 'tourTypeColor' : 'blue' } , { 'locationName' : 'Wijesingha Hardware', 'city' : 'Galle', 'addr' : '113A, Wackewella Road, Galle', 'estimatedTime' : '120', 'tourTypeColor' : 'green' } ]} 

Сетка успешно загружена. Теперь мне нужно изменить цвет фона столбца «Location Name». Согласно моим данным Json, каждое название местоположения имеет tourTypeColor. Мне нужно изменить каждую ячейку имени местоположения в соответствии с этим цветом.

Любые предложения распространяются. пожалуйста, помогите мне с некоторыми сегментами кода.

Большое спасибо

ответ

1

Я не то, что фирма в с использованием ExtJS 3.

Я бы попытаться определить rendere для столбца "Капля/Pick Loc", как это:

{ 
    sortable : true, 
    header : "Drop/Pick Loc", 
    dataIndex : 'locationName', 
    width : 170, 
    renderer : function(value, metaData, record, rowIndex, colIndex, store) { 

        metaData.attr = 'style="color:' + record.get('tourTypeColor') + ';"'; 
        return value; 
       } 
} 
+0

Thanx для вашего ответа Michel, но ничего не делает – Rose18

+0

И ошибки не возникает? Не может быть так неправильно :) Здесь я взял пример, который нашел, и он работает http://jsfiddle.net/MichelH/F9QM7/1/ У меня не было правильного css прямо сейчас. – Michel

+0

Это не дает никакого сообщения об ошибке – Rose18

Смежные вопросы