sty2008boy 发表于 2013-1-29 08:54:58

zTree2.6 动态Check赋值

在前台这么写,后台直接SQL查询就能赋值了   <script type="text/javascript">         var setting = {             async: {               enable: true,               url: '/YY_BD_FaultType/JsonCYTimeApp',               autoParam: ["id","pId", "name=n"],               otherParam: { "otherParam": "zTreeAsyncTest" },               dataFilter: filter             },            data: {    simpleData: {   enable: true    }   },          check: {    enable: true},            callback: {    beforeCheck: beforeCheck,    onCheck: onCheck   }         };         function filter(treeId, parentNode, childNodes) {             if (!childNodes) return null;             for (var i = 0, l = childNodes.length; i < l; i++) {               childNodes.name = childNodes.name.replace(/\.n/g, '.');             }             return childNodes;         }         var code, log, className = "dark";         function beforeCheck(treeId, treeNode) {             className = (className === "dark" ? "" : "dark");             //             showLog(treeNode.name);             return (treeNode.doCheck !== false);         }         function onCheck(e, treeId, treeNode) {             if (treeNode.checked == true) {               showLog(treeNode.id);             }         }         function showLog(str) {             if (!log) log = $("#log");             log.append(str);             zhi(str)             if (log.children("li").length > 6) {               log.get(0).removeChild(log.children("li"))             }         }         function zhi(str) {             document.getElementById("ID").value = str;         }         function checkNode(e) {             var zTree = $.fn.zTree.getZTreeObj("treeDemo"),                type = e.data.type,                nodes = zTree.getSelectedNodes();             if (type.indexOf("All") < 0 && nodes.length == 0) {               alert("请先选择一个节点");             }             if (type == "checkAllTrue") {               zTree.checkAllNodes(true);             } else if (type == "checkAllFalse") {               zTree.checkAllNodes(false);             } else {               for (var i = 0, l = nodes.length; i < l; i++) {                     if (type == "checkTrue") {                         zTree.checkNode(nodes, true);                     } else if (type == "checkFalse") {                         zTree.checkNode(nodes, false);                     } else if (type == "checkTruePS") {                         zTree.checkNode(nodes, true, true);                     } else if (type == "checkFalsePS") {                         zTree.checkNode(nodes, false, true);                     }               }             }         }         $(document).ready(function () {             $.fn.zTree.init($("#treeDemo"), setting);             $("#checkTrue").bind("click", { type: "checkTrue" }, checkNode);             $("#checkFalse").bind("click", { type: "checkFalse" }, checkNode);             $("#checkTruePS").bind("click", { type: "checkTruePS" }, checkNode);             $("#checkFalsePS").bind("click", { type: "checkFalsePS" }, checkNode);             $("#checkAllTrue").bind("click", { type: "checkAllTrue" }, checkNode);             $("#checkAllFalse").bind("click", { type: "checkAllFalse" }, checkNode);         });                      </script> 
 
2.
设置勾选状态,请修改node数据的 checked属性,然后利用updateNode方法更新即可,请注意 checkTypeFlag参数,按照你需要的情况设定。 在v3.0中,将会提供checkNode方法,可以专门用于设置勾选状态,当然updateNode也还保有目前的功能。
 
3.终
    setTimeout(function() { zTree.checkAllNodes(true); },3000);
页: [1]
查看完整版本: zTree2.6 动态Check赋值