EasyUI的datagrid获取所有正在编辑状态的行的行编号

 今天项目需要用了下EasyUI的datagrid的行编辑功能,跟着API来,只要是将各种状态时的处理逻辑弄好,还是蛮不错的。

开发过程中,遇到了个问题,在编辑完成后我需要获取datagrid所有处于编辑状态的行,进行结束编辑后,获取编辑行的值。这时的操作,我可以是将datagrid所有的行都取出来,然后循环都进行endEdit操作,这样确实可以做到。但是考虑到,在datagrid中有可能只有少数的行是编辑状态的,这样如果全部循环去关闭,明显的在做一些无用的操作。

正常的思路,我应该是找到正在编辑的所有行,然后有针对性的关闭。但是EasyUI并没有提供该方法。也在网上找了下,发现在网上问这个问题的人也是存在,但是并没找到满意的答案。所以就自己写了一个获取的方法。分享出来,希望对需要的人有所帮助。

/*
*  datagrid 获取正在编辑状态的行,使用如下:
*  $('#id').datagrid('getEditingRowIndexs'); //获取当前datagrid中在编辑状态的行编号列表
*/
$.extend($.fn.datagrid.methods, {
    getEditingRowIndexs: function(jq) {
        var rows = $.data(jq[0], "datagrid").panel.find('.datagrid-row-editing');
        var indexs = [];
        rows.each(function(i, row) {
            var index = row.sectionRowIndex;
            if (indexs.indexOf(index) == -1) {
                indexs.push(index);
            }
        });
        return indexs;
    }
});

 

 有什么可以优化的点,或者有什么问题欢迎大家提出来。

Author:月夜 @ LTGK
Time: 2016-02-03 周三

 

转载于:https://www.cnblogs.com/yueye/p/5180644.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值