我已经以编程方式创建了dojox.grid.datagrid
,我需要对列进行自定义排序。
为此,我尝试使用ItemFileWriteStore.comparatorMap['field'] = comparatorFunc
。但我的比较器功能从未被调用过。
对于我在这里缺少的东西有任何想法吗?
答案 0 :(得分:0)
我在数据网格上进行了自定义排序。 (道场-1.4) 示例代码:
function(response, ioArgs){
queryGrid.queryOptions={ignoreCase:true};
queryGrid.setStore(new dojo.data.ItemFileReadStore(response[responseResult]));
setCustomSort(queryGrid.store);
..
}
function setCustomSort(store){
if(!store.comparatorMap){
store.comparatorMap = {};
}
store.comparatorMap["unresolvedHrs"] = sortNum;
store.comparatorMap["tat"] = sortNum;
}
function sortNum(a, b){
var _a = convertTimeToNum(a);
var _b = convertTimeToNum(b);
var ret = 0;
if (_a > _b) {
ret = 1;
}
if (_a < _b) {
ret = -1;
}
return ret;
}
这里convertTimeToNum是将时间格式值转换为分钟数。