var id = 0;//在外面声明个全局变量id
Ext.onReady(function(){
var studentRecord = new Ext.data.Record.create([
{name:'id',type:'int'},
{name:'sid',type:'int'},
{name:'username',type:'string'},
{name:'gender',type:'string'}
]);
var columns = new Ext.grid.ColumnModel([
{header:'学号',dataIndex:'sid',sortable:true},
{header:'姓名',dataIndex:'username'},
{header:'性别',dataIndex:'gender',sortable:true}
]);
var grid = new Ext.grid.GridPanel({
title:'学生信息管理',
loadMask:true,
store:store,
cm:columns,
autoHeight:true,
sm:new Ext.grid.RowSelectionModel({singleSelect:true}),
viewConfig:{
forceFit:true,
columnsText:'所有列',
sortAscText:'小到大排序',
sortDescText:'大到小排序'
},
bbar:new Ext.PagingToolbar({
pageSize:15,
store:store,
displayInfo:true,
displayMsg:'显示第 {0} - {1} 条记录,共 {2} 条',
emptyMsg:'没有记录!'
})
});
//重点!
grid.on('rowcontextmenu',function(grid,rowIndex,e){//给表格添加一个 行上的右键点击事件
e.preventDefault();//取消默认的浏览器右键事件
grid.getSelectionModel().selectRow(rowIndex);//将点中的那行选中
contextmenu.showAt(e.getXY());//在选中的那行显示按钮
var record = grid.getStore().getAt(rowIndex);//获取选中行的数据集
var id = record.get('id');//再通过数据集获取id
setId(id);//将获取的Id赋值给全局变量
});
function setId(id){
this.id = id;
}
var contextmenu = new Ext.menu.Menu({
id:'deleteMenu',
items:[{
text:'删除',
handler:function(){//删除事件
Ext.Ajax.request({
url:'crud!delete.action',
params:{'student.id':this.id},//action只要提供Student的get()/set()方法就ok了
success:function(response,options){
...
},
failure:function(response,options){
...
}
});
}
}]
});
});
ExtJs删除表格记录.rowcontextmenu
最新推荐文章于 2022-09-26 14:04:43 发布