我在grid的行中有一个删除链接,想点一下链接把这行删除掉,但是实现不了,希望大家可以指点下
var grid = new Ext.grid.GridPanel({
ds: ds,
cm: cm,
height:h,
tbar: [{
text: ' 新增行',
iconCls: 'bmenu10',
handler : function(){
var p = new newcm({
id: "<a href='#'>[删除]</a>",
goodsNo: i=++i,
goodsName: '',
batch: '',
batch: '',
goodsType: '',
specification: '',
num: ''
});
ds.insert(0, p);
}
},{
xtype: "tbseparator"
},{
text:' 删除所有行',
iconCls:'bmenu7',
handler:''
}],
bbar: [{
xtype : 'label',
text : '合计:'
},{
xtype : "tbfill"
},{
xtype : "label",
text : "数量:"
},{
xtype : "label",
id : "totnum",
text : ""
}],
loadMask:{msg:'正在载入数据,请稍等...'}
});
问题补充:
采用1楼的方法,因为需要编辑所以改成使用EditorGridPanel,但是出错了。。。
grid.on('click', function(e) {
var col = e.getTarget('.deleteCol');
if (col) {
Ext.MessageBox.confirm('确认', '你确认要删除这行吗?', function(btn){
if(btn=='yes'){
var sm = grid.getSelectionModel();
var record = sm.getSelected(); //执行到这里报错
ds.remove(record);
}
});
}
}, grid);
问题补充:
不是null是[object],我把EditorGridPanel换成GridPanel就可以执行通过,但是我需要行里的编辑功能
问题补充:
或者confirm的函数里能不能传参数进去,可以的话把行号传进去也行
问题补充:
firebug没用过。。。IE里提示的是对象不支持此属性或方法