分享

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

 一本正经地胡闹 2019-05-27
                                       https://blog.csdn.net/u013008179/article/details/47680951
  1. <script>
  2. function filter(node) { //过滤器直选中2级节点累加
  3. return (node.level == 2 && node.checked == true);
  4. }
  5. var setting = { //设置
  6. check: {
  7. enable: true
  8. },
  9. callback: {
  10. onCheck: onCheck
  11. }};
  12. function onCheck(e, treeId, treeNode){ //这是将所有选中节点的名字 用,分割做拼接 用于持久化到数据库
  13. var zTree = $.fn.zTree.getZTreeObj("tree").getNodesByFilter(filter);
  14. var choose = "";
  15. for (var i=0;i<zTree.length;i++) {
  16. if(zTree[i].name !=null)
  17. choose +=(i == (zTree.length-1))?zTree[i].name:zTree[i].name+",";
  18. }
  19. $("#ztreesnames").val(choose);
  20. treeIds();
  21. }
  22. function treeIds(){ //这是将选中的节点的id用;分割拼接起来,用于持久化到数据库
  23. var zTreeO = $.fn.zTree.getZTreeObj("tree").getNodesByFilter(filter);
  24. var idListStr = "";
  25. for (var i = 0; i < zTreeO.length; i++) {
  26. if (zTreeO[i].id != null) {
  27. idListStr+= (i == (zTreeO.length-1))?zTreeO[i].id:zTreeO[i].id+";";
  28. }
  29. };
  30. $("#ztreeids").val(idListStr);
  31. };
  32. $(document).ready(function(){ /**这是处理回显选中的方法*/
  33. $.fn.zTree.init($("#tree"), setting, zNodes);
  34. var zTreeObj = $.fn.zTree.getZTreeObj("tree")
  35. var zTree = zTreeObj.getCheckedNodes(false);
  36. var pid= "${personCode}"; /**此处数据前后必须拼接;*/
  37. for (var i = 0; i < zTree.length; i++) {
  38. if (pid.indexOf(";" + zTree[i].id + ";") != -1) {
  39. zTreeObj.expandNode(zTree[i], true); //展开选中的
  40. zTreeObj.checkNode(zTree[i], true);
  41. }
  42. }
  43. onCheck();
  44. });
  45. </script>
  1. <html>
  2. <input type="hidden" id="ztreeids"/>
  3. <input type="hidden" id="ztreesnames"/>
</html>

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多