zoukankan      html  css  js  c++  java
  • miniui反选

    miniui中,如果行数据进行过合并,那么在数据全选的时候,就会出现问题,研究之后,发现可以用下面的方法解决:

    <div id="datagrid" class="mini-datagrid" style="100%;height:100%;" visible="true" 
               onselectionchanged="onSelectionChange" 
               ondeselect="deselect" onselect="select">
        function onSelectionChange() {
                var rows = grid.getSelecteds();
                unselectedList = dedupe(unselectedList);
                for (var unidx = 0; unidx < unselectedList.length ; unidx ++ ){
                    var sidx = rows.length;
                    while(sidx--){
                         if(rows[sidx].deliveryid == unselectedList[unidx]){
                             rows.splice(sidx,1);
                         }
                    }
                }
                for(var i = 0 ; i < rows.length ; i ++ ){
                   //此时的rows为选中数据
                }
    
            }
        //反选
            function deselect(sender){
                unselectedList.push(sender.record.deliveryid); 
            }
    
            //选中
            function select(sender){
                selectedList = sender.record.deliveryid; 
                unselectedList = dedupe(unselectedList);
                var idx = unselectedList.length;
                while(idx--){
                       if(unselectedList[idx] ==  selectedList){
                           unselectedList.splice(idx,1);
                       }
                   }
            }
    
            //去重
            function dedupe(array){
               return Array.from(new Set(array));
            }
  • 相关阅读:
    leetcode-剑指10-OK
    leetcode-剑指22-OK
    vue组件引入
    vue项目单页
    vue-cli脚手架创建vue项目
    vue生命周期
    ES6 DEMO
    ES6
    记录一个天坑
    CentOS 7防火墙快速开放端口配置方法
  • 原文地址:https://www.cnblogs.com/xiaoQ0725/p/9254525.html
Copyright © 2011-2022 走看看