您的位置:首页 > 其它

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

2016-02-16 17:47 381 查看
<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>
<input type="hidden" id="ztreeids"/>
<input type="hidden" id="ztreesnames"/>
</html>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: