删除datagrid删除记录
使用的jquery框架,在权限管理或者POJO之间有一对多,多对多时关联关系的删除.
1.需要解除关联关系的datagrid的的查询,没有分页(所有的能查询的方法都不分页,后台实现不能分页)
//datagrid查询的方法是
$('#stationData').datagrid( {
url : 'stationAction!query.action',
queryParams : {
userid : selected.id
}
//-----------------------------
function deleteUserStation() {
var userSelected = $('#userData').datagrid('getSelected');
if (userSelected == null) {
setMessage("请选择要解绑的用户信息!");
return;
}
var stationSelected = $('#stationData').datagrid('getSelected');
if (stationSelected == null) {
setMessage("请选择要解绑的岗位信息!");
return;
}
stationSelected = $('#stationData').datagrid('getSelections');
var userData = JSON.stringify(userSelected);
var stationData = JSON.stringify(stationSelected);
$.messager.confirm("系统提示", "确定要解除绑定吗?", function(result) {
if (result) {
showLoad("操作执行中,请稍后...");
$.post('roleManageAction!deleteUserStation.action', {
userData : userData,
stationData : stationData
}, function(data) {
if (data.messageCode != "success") {
setMessage("解绑失败!");
} else {
hideLoad();
setMessage("解绑成功!");
for(var i =0; i<stationSelected.length;i++){//这里在删除的时候,stationSelected.length与$('#stationData').datagrid('deleteRow',inde)的执行无关
var inde = $('#stationData').datagrid('getRowIndex',stationSelected[i]);
$('#stationData').datagrid('deleteRow',inde);
}
}
});
}
});
}
2.需要解除关联关系的datagrid的的查询,分页显示(整个页面出现一次即可)
//datagrid查询的方法是
$('#stationData').datagrid( {
url : 'stationAction!queryStation.action',
pageNumber : 1,
queryParams : {
userid : selected.id
}
//-----------------------------
function deleteUserStation() {
var userSelected = $('#userData').datagrid('getSelected');
if (userSelected == null) {
setMessage("请选择要解绑的用户信息!");
return;
}
var stationSelected = $('#stationData').datagrid('getSelected');
if (stationSelected == null) {
setMessage("请选择要解绑的岗位信息!");
return;
}
stationSelected = $('#stationData').datagrid('getSelections');
var userData = JSON.stringify(userSelected);
var stationData = JSON.stringify(stationSelected);
$.messager.confirm("系统提示", "确定要解除绑定吗?", function(result) {
if (result) {
showLoad("操作执行中,请稍后...");
$.post('roleManageAction!deleteUserStation.action', {
userData : userData,
stationData : stationData
}, function(data) {
if (data.messageCode != "success") {
setMessage("解绑失败!");
} else {
hideLoad();
setMessage("解绑成功!");
for(var i =0; i<stationSelected.length;){//这里在删除的时候,stationSelected.length会随着$('#stationData').datagrid('deleteRow',inde)的执行而递减
var inde = $('#stationData').datagrid('getRowIndex',stationSelected[i]);
$('#stationData').datagrid('deleteRow',inde);
}
}
});
}
});
}
希望对大家有用!也可能是其他原因。哪位Jquery的大神可以具体解释下原因吗???