@kemy
首先请参考我的
http://www.cnblogs.com/cmsoft/archive/2007/11/24/ExtJS_Grid_Delete.html这个文章
然后GridForProjectLists.JS中实现Grid的ContextMenu及Del功能如下:
//right click menu
gdProjects.addListener('rowcontextmenu', showContextMenu);
function showContextMenu(gdProjects, rowIndex, e) {
e.stopEvent();
var local = e.getXY();
var gridContextMenu = new Ext.menu.Menu({
items: [
{
text: '删除',
handler: function(){
var record = gdProjects.getStore().getAt(rowIndex);
Ext.MessageBox.show(
{
title:'提示',
msg:'确实需要删除所选的记录吗?',
buttons: Ext.MessageBox.YESNO,
icon: Ext.MessageBox.QUESTION,
fn: function(button){
if(button=='yes'){
var projectNo=record.data.PROJECT_NO;
var conn = new Ext.data.Connection();
conn.request({
url:"../Projects/OperProjects/DeleteProject.asmx/DelProject",
params:{strProjects:projectNo},
method: 'post',
scope: this,
callback:function(options,success, response){
if(success){
Ext.MessageBox.alert("提示","所选记录成功删除!");
ds.load({params:{start:0, limit:25}});
}
else
{Ext.MessageBox.alert("提示","所选记录删除失败!");}
}
})
}
}
});
}
}
]
});
gridContextMenu.showAt([local[0], local[1]]);
e.preventDefault();
};