高分求解ext gridpanel 难点

iloveaspnet2008 2012-05-29 08:05:02
gridpanel 的editor里动态根据某一行的某一个值来设置这一行的editor是否可编辑。
谢谢!
...全文
200 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
tank_lei 2012-07-09
  • 打赏
  • 举报
回复
哥们,问题解决了吗?
我也碰见这个问题了
用 extjs4
没有
Ext.grid.ColumnModel.prototype.isCellEditable.call(this, col, row);
这方法
豆虫 2012-05-30
  • 打赏
  • 举报
回复
我现在手头上没有API 无法查找 说下思路,希望能够帮到楼主:

1、看下API,有相应的API就不用看第2条方案了。

2、如果API中没有相应的方法 可以Firebug看下这个EditorGrid每一行的dom结构,看每次生成的dom结构有什么规律 然后直接用js操作Dom即可 不必非依赖于Ext的API
josephSC 2012-05-30
  • 打赏
  • 举报
回复
楼主的问题在哪里呢?根据你上面的代码在isCellEditable里的if语句来判断不行吗?
lzpggg 2012-05-29
  • 打赏
  • 举报
回复
这是我工程里的代码片段,函数buildColumns()负责构造EditorGridPanel的列模型

buildColumns : function(){
var colM = new Ext.grid.ColumnModel({
columns : [
new Ext.grid.RowNumberer(),
{header: "ID", dataIndex: 'id', hidden: true,editable : false,width: 50},
{header: "金融机构名称", dataIndex: 'financial_organ_name', width: 200,align: 'left',editor: this.organizationName()},
{header: "金融机构代码", dataIndex: 'financial_organ_code', hidden: true,editor: this.financialCodeCombo()},
{header: "组织机构代码", dataIndex: 'organ_code', hidden: true,editor: this.organizationCodeCombo()},
{header: "网点所属地区", dataIndex: 'branch_district', hidden: true},
{header: "贷款人", dataIndex: 'lender'}
//...
],
isCellEditable: function(col, row) {
if (row%2==0 && col==6) {//替换你想要的条件,这里假设第六列偶数行可编辑
return false;
}
return Ext.grid.ColumnModel.prototype.isCellEditable.call(this, col, row);
}
});
return colM;
}
人生无悔 2012-05-29
  • 打赏
  • 举报
回复
给Ext.grid中的ColumnModel添加你自定义的方法,传入参数为colIndex,rowIndex,根据grid中的store
获取当前记录,根据记录返回是否可编辑。。。
然后在你定义grid实例后,调用一下此方法就可以了。。。

52,797

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧