var zTree = $.fn.zTree.init($("#treeDemo"), setting, zNodes); var setting = { check: { enable: true, chkStyle: "checkbox", chkboxType: { "Y": "ps", "N": "s" } }, data: { simpleData: { enable: true } }, view: { showIcon: false }, callback: { onClick: function zTreeOnClick(event, treeId, treeNode) { var checkedFlag = treeNode.checked; if (checkedFlag) { // 若是已經選中,則取消選中狀態 setChildrenCheckedState(treeNode, false); } else { // 若是沒有選中,則設置爲選中狀態 setChildrenCheckedState(treeNode, true); } } } }; //設置選中的節點treeNode下全部的子節點的選中狀態 function setChildrenCheckedState(treeNode, flag) { // 設置被點擊的節點選中狀態 treeNode.checked = flag; // 須要更新才能正確顯示更新後的狀態 zTree.updateNode(treeNode); if (treeNode.isParent) { for (var obj in treeNode.children) { treeNode.children[obj].checked = flag; zTree.updateNode(treeNode.children[obj]); } } }