悬赏50分!!!!关于Ext.grid.EditorGridPanel的一个问题 50
我用Ext.grid.EditorGridPanel编辑数据时,当有2行或2行以上时,一直快速点击某几列时,会出现如下错误:'this.field.assertValue...
我用Ext.grid.EditorGridPanel编辑数据时,当有2行或2行以上时,一直快速点击某几列时,会出现如下错误:
'this.field.assertValue' 为空或不是对象
我的编辑框是不同类型的
加入监听也无效
'cellclick': function(grid,row,col,e) {
var column=grid.getColumnModel().getColumnById(col);
var record = grid.getStore().getAt(row);
var XX= grid.getColumnModel().findColumnIndex('XX');
var type = record.data.type;
if(type == "11"){
grid.getColumnModel().setEditor(XX,new Ext.form.ComboBox( ));
}else if(type == "22"){
grid.getColumnModel().setEditor(XX,new Ext.form.TextField( ));
}
},
// 单元格编辑后提交该行数据
'afterEdit': function(e) {
e.record.commit();
}
跪求大侠解决、坐等..... 展开
'this.field.assertValue' 为空或不是对象
我的编辑框是不同类型的
加入监听也无效
'cellclick': function(grid,row,col,e) {
var column=grid.getColumnModel().getColumnById(col);
var record = grid.getStore().getAt(row);
var XX= grid.getColumnModel().findColumnIndex('XX');
var type = record.data.type;
if(type == "11"){
grid.getColumnModel().setEditor(XX,new Ext.form.ComboBox( ));
}else if(type == "22"){
grid.getColumnModel().setEditor(XX,new Ext.form.TextField( ));
}
},
// 单元格编辑后提交该行数据
'afterEdit': function(e) {
e.record.commit();
}
跪求大侠解决、坐等..... 展开
2个回答
展开全部
grid.getColumnModel().setEditor(XX,new Ext.form.TextField( ));
这行出错的话可能是你点击事件在还没有完全做完 把数据冲表格中赋值到TextField这个过程 当第二次执行时 TextField对象还没有创建
检查你的逻辑 用ff调试看看
这行出错的话可能是你点击事件在还没有完全做完 把数据冲表格中赋值到TextField这个过程 当第二次执行时 TextField对象还没有创建
检查你的逻辑 用ff调试看看
追问
关键是其他的浏览器都可以,就是IE和搜狗浏览器不好使、
追答
ie对于对象的域是有很多限制的
而在其他浏览器中对象的域问题被弱化
也就是我们说的加载顺序
在ie中 不会等待所有对象创建完成在进行其他操作
而像ff等浏览器是不关系对象的创建顺序的
2013-03-22
展开全部
有可能是IE插件问题
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询