zTree获得选择节点的值以及反显选中

来源:互联网 发布:java 字符串和日期比较 编辑:程序博客网 时间:2024/05/20 06:29
<script>  
function filter(node) {   //过滤器直选中2级节点累加  
    return (node.level == 2 && node.checked == true);  
}  
   
var setting = {          //设置  
    check: {  
    enable: true  
    },  
    callback: {  
        onCheck: onCheck  
}};  
   
function onCheck(e, treeId, treeNode){  //这是将所有选中节点的名字 用,分割做拼接 用于持久化到数据库  
     var zTree = $.fn.zTree.getZTreeObj("tree").getNodesByFilter(filter);  
     var choose = "";  
     for (var i=0;i<zTree.length;i++) {  
         if(zTree[i].name !=null)  
     choose +=(i == (zTree.length-1))?zTree[i].name:zTree[i].name+",";  
     }  
     $("#ztreesnames").val(choose);  
     treeIds();  
}  
   
function treeIds(){                      //这是将选中的节点的id用;分割拼接起来,用于持久化到数据库  
   var zTreeO =  $.fn.zTree.getZTreeObj("tree").getNodesByFilter(filter);  
   var idListStr = "";  
   for (var i = 0; i < zTreeO.length; i++) {  
      if (zTreeO[i].id != null) {  
     idListStr+= (i == (zTreeO.length-1))?zTreeO[i].id:zTreeO[i].id+";";  
      }  
   };  
   $("#ztreeids").val(idListStr);  
};  
   
   
$(document).ready(function(){ /**这是处理回显选中的方法*/  
    $.fn.zTree.init($("#tree"), setting, zNodes);             
    var zTreeObj = $.fn.zTree.getZTreeObj("tree")  
    var zTree = zTreeObj.getCheckedNodes(false);  
    var pid= "${personCode}"; /**此处数据前后必须拼接;*/  
    for (var i = 0; i < zTree.length; i++) {  
        if (pid.indexOf(";" + zTree[i].id + ";") != -1) {  
                    zTreeObj.expandNode(zTree[i], true); //展开选中的  
                    zTreeObj.checkNode(zTree[i], true);                   
        }  
    }  
   onCheck();  
});  
</script>  
[html] view plain copy 在CODE上查看代码片派生到我的代码片
<html>  
<input type="hidden" id="ztreeids"/>  
<input type="hidden" id="ztreesnames"/>  
0 0
原创粉丝点击