创建gridx时,我使用以下列定义将Edit按钮插入到每行的最后一个单元格中:
var editColumn = { field : 'Edit', name : '', widgetsInCell: true,
onCellWidgetCreated: function(cellWidget, column){
var btn = new Button({
label : "Edit",
onClick : function() {
console.log('Do stuff here');
});
btn.placeAt(cellWidget.domNode);
}
};
columns.push(editColumn);
var grid = new Grid({
cacheClass : Cache,
store : store,
structure : columns,
modules: ["gridx/modules/CellWidget"]
}, 'gridNode');
grid.body.onAfterRow = function(row){
...do stuff on the row here
};
当我包含onAfterRow函数时,行处理发生但OnCellWidgetCreated没有。每个功能似乎都在没有其他功能的情况下工作。关于如何做的任何建议:(1)根据行数据格式化行和(2)在每行的最后一个单元格中插入按钮小部件?
答案 0 :(得分:0)
好的,解决了。而不是分配grid.body.onAfterRow,对我有用的方式是:
aspect.after(grid.body,'onAfterRow',function(row){
key = row.id;
if ('anulada' in row.grid.store.get(key)){
if(row.grid.store.get(key).anulada == true){
row.node().style.color = 'gray';
}
}
},true);
您需要“dojo / aspect”。