/**
* 调用形式 deleteUtil("....action",grid,"id");或者deleteUtil("....action",grid,"id","name");
* 第1个参数是请求后台地址
* 第2参数是grid
* 第3个参数开始是根据哪些字段删除
*/
function deleteUtil(){
var argLen=arguments.length; //参数的长度
var grid = arguments[1]; //取得第2个参数是grid,以后的参数是根据哪个字段删除
var rows = grid.getSelectionModel().getSelections();
var rowsLen=rows.length;//所选删除行的长度
var deleteIds=[];
for(var i = 0;i < rowsLen;i++){
var str ={};
for(var j =2;j<argLen;j++){
var a = arguments[j];
str[a]=rows[i].get(a);
}
//把一个object对象push进一个数组
deleteIds.push(str)
}
Ext.Ajax.request({
url:arguments[0],//第1个参数是请求后台地址
params:{deleteIds:Ext.encode(deleteIds)},
success:function(response){
grid.getStore().reload();
var jsonStr = Ext.util.JSON.decode(response.responseText);
Ext.MessageBox.alert("系统提示",'<font color=black>'+jsonStr.msg+'</font>');
},
failure:function(response){
Ext.MessageBox.alert("系统提示",'<font color=black>与后台联系失败,请联系管理员...</font>');
}
});
}
还需完善 希望大家给出更好的写法