EasyUI Datagrid控件ReLoad后选中行不正确的解决方案

EasyUI DataGrid 控件,在使用Relod方式刷新后 取选中行总是错误.

//获取选中行
var rows = $("#grid").datagrid("getSelections");
        if (rows.length == 0) {
            //没有选中行
            $.messager.alert("提示信息", "请选择删除的记录!", "warning");
        } else {
            //选中了行
            //将选中行的记录的id拼接为字符串使用逗号分隔,提交到服务端,完成作废操作
            var arr = new Array();
            for (var i = 0; i < rows.length; i++) {
                arr.push(rows[i].adid);
            }
            var ids = arr.join(",");
}


//刷新表格
$('#grid').datagrid('reload', null);

上面的代码,第二次获取选中行时总是会得到意外数据.

现在,我们需要在刷新表格的时候,调用 DataGrid控件的另一个方法,clearSelections 清除选中行再刷新表格.

 

//获取选中行
var rows = $("#grid").datagrid("getSelections");
        if (rows.length == 0) {
            //没有选中行
            $.messager.alert("提示信息", "请选择删除的记录!", "warning");
        } else {
            //选中了行
            //将选中行的记录的id拼接为字符串使用逗号分隔,提交到服务端,完成作废操作
            var arr = new Array();
            for (var i = 0; i < rows.length; i++) {
                arr.push(rows[i].adid);
            }
            var ids = arr.join(",");
}


//刷新表格
$('#grid').datagrid('clearSelections');//加入这个方法,再次获取选中行即可恢复正常
$('#grid').datagrid('reload', null);

 转载请保留作者链接:http://www.cnblogs.com/mean/articles/7714567.html

posted @ 2017-10-23 09:31  想看名字有多长  阅读(1045)  评论(1编辑  收藏  举报