http://blog.csdn.net/majian_1987/article/details/8716448
项目中遇到这么一个问题,在easyui的datagrid中,删除一条记录成功,重新加载datagrid后,去点编辑操作,仍可把之前删除掉的那条记录进行编辑操作,正常情况应该是,删除后再去点击“编辑”,应提示没有被选中的记录。现在这个情景说明,在datagrid删除数据重新加载后,当datagrid调用getSelections方法时,仍能返回之前删除的那条记录。这时,要解决这个问题,应该在删除数据重新加载datagrid后再清空selections。
代码如下:
- /**删除选中救援任务*/
- function removeTask(){
- var datas = $('#rescueTaskTable').datagrid('getSelections');
- if(datas.length == 0){
- $.messager.alert('信息提示','请选择要删除的记录!');
- }else{
- var ids = "";
- for(var i =0;i<datas.length;i++){
- ids = ids + datas[i].id + ";";
- }
- $.messager.confirm('删除提示', '您确定要删除选中的记录吗?', function(r){
- if (r){
- $.post(ctx+'/rims/rescueTask/deleteRescueTaskInfo.do?taskIds='+ids)
- .success(
- function() {
- $.messager.show({title:'操作提示',msg:'删除成功!',showType:'show'});
- <span style="background-color: rgb(255, 204, 204);"> $('#rescueTaskTable').datagrid('reload');
- $('#rescueTaskTable').datagrid('clearSelections');</span>
- }
- ).error(
- function() {
- $.messager.show({title:'操作提示',msg:'删除失败!',showType:'show'});
- <span style="color:#ffcccc;">$('#rescueTaskTable').datagrid('reload');
- $('#rescueTaskTable').datagrid('clearSelections');</span>
- }
- );
- }
- });
- }
- }