我有个grid需要显示
id 评论主题 评论人 是否匿名 时间
评论人项根据是否匿名 显示匿名或者评论人名字
如果匿名,评论人项显示匿名,
否则显示评论人名称.
这个肯定是渲染前就要处理,
但是怎么处理,求高手指点.
1 var cm = new Ext.grid.ColumnModel([sm,
2 { header: "状态", dataIndex: "IsRead", width: 30, tooltip: "已读/未读", sortable: true, renderer: formatIsRead },
3 { header: "评论主题", dataIndex: "EvaTitle", tooltip: "评论主题", sortable: true },
4 { header: "评论人", dataIndex: "SelfUserName", tooltip: "用户名/英文名", sortable: true, renderer: formatSelfUserName },
5 { header: "评论状态", dataIndex: "PostLev", tooltip: "评论状态", sortable: true, renderer: formatPostLev },
6 { header: "评论时间", dataIndex: "PostTime", tooltip: "评论时间", sortable: true}]);
但是我只获得到selfusername,无法获取postlev.
那就不好判断.
再想在评论状态增加handler
根据postlev改变评论人,但是不会.
高手指点,刚接触extjs三天,呵呵...
如果我理解的没错,你可以这样实现的,在你的renderer函数里处理:
// 单元格显示格式化--评论人
function formatSelfUserName(data, cell, record, rowIndex, columnIndex, store) {
// data是从store里读出来的当前单元格的值
// 若不作处理的话 直接显示其原生态值
var SelfUserName; // 定义要显示在表格上的评论人值 (处理后)// 得到当前行记录里评论状态的值
// 另外 整个Grid的store都在这了 是可以取任一行任一列的值的
var PostLev = record.data.PostLev;
if (PostLev == "是")
SelfUserName = "匿名";
else
SelfUserName = data;
// 其它处理 (颜色、字体等设置)
// ... ...
return SelfUserName;
}
那个“评论状态”列是那个“是否匿名”列吧?