• easyui tree使用方法


    加载数据


     $('#treeul').tree({
                    checkbox:true,
                    url:'initTree.aspx',
                    onLoadSuccess:function(){
                        //绑定权限
                         $.ajax({
                            url:'getId.aspx?id='+v,
                             cache:false,
                             dataType:'text',
                             success:function(data){  
                                var array = data.split(',');
                                for(var i=0;i<array.length;i++)
                                {
                                    var node = $('#treeul').tree('find',array[i]);
                                   $('#treeul').tree('check',node.target);
                                }
                            }
                        })
                    }
                });

      

    cache必须设置为false,意思为不缓存当前页,否则更改权限后绑定的权限还是上一次的操作结果.

    dataType表示获取服务器发送的数据,"text"表示纯文本

    保存选中的节点

      $('#savebtn').click(function(){    
                   $.ajax({
                    url:'nodeHandler.ashx?pnodes='+GetNode('fnode')+ '&cnodes='+GetNode('child') +'&id='+v,
                      cache:false,
                    success:function(data){
                        eval('data='+data);
                        if(data.success){
                            alert('保存成功');
                            window.location.href='Permission.aspx';
                        }
                    }
                   })
                });
      

    保存的时候,也必须将cache设置为false 

    GetNode方法

    参数代表:父节点或子节点

    function GetNode(type){
                var node = $('#treeul').tree('getChecked');
                var cnodes='';
                var pnodes='';
                
                 var prevNode=''; //保存上一步所选父节点
                for(var i=0;i<node.length;i++){
                   
                    if($('#treeul').tree('isLeaf',node[i].target)){
                        cnodes+=node[i].id+',';  
                        
                        var pnode = $('#treeul').tree('getParent',node[i].target); //获取当前节点的父节点
                       if(prevNode!=pnode.id) //保证当前父节点与上一次父节点不同
                       {
                            pnodes+=pnode.id+',';
                            prevNode = pnode.id; //保存当前节点
                       }
                    }
                }
                cnodes = cnodes.substring(0,cnodes.length-1);
                pnodes = pnodes.substring(0,pnodes.length-1);
               
                if(type=='child'){return cnodes;}
                else{return pnodes};
            };

    绑定tree的时候,只需要绑定子节点就可以了,父节点是根据子节点的状态决定是否选中的。一个父节点有2个子节点,如果我只绑定一个子节点,那么父节点的选择状态就不是“√”,如果2个子节点都有绑定的话,那么父节点的选中状态就是"√"
  • 相关阅读:
    iframe嵌套网页
    text-shadow用法
    响应式布局
    JavaScript控制显示与隐藏
    JavaScript数据类型
    JavaScript基础
    自适应网页设计/响应式Web设计
    不是人家太装逼,而是我们太low
    HTML空格的特性
    如何在Crystal Report中加入Html Field, Rtf Field
  • 原文地址:https://www.cnblogs.com/dqsweet/p/4927790.html
Copyright © 2020-2023  润新知