# silver-goggles **Repository Path**: lbst/silver-goggles ## Basic Information - **Project Name**: silver-goggles - **Description**: No description available - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2018-01-25 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## 1. 使用 ### a) 使用本地的json数据 ``` html js //从后台获取数据 $.getJSON("<%=request.getContextPath()%>/ztree/findLedgerTreeAjax.do", function(result){ // ztree下拉菜单 $('#departName').ztreeSelect({ hidObj: $('#ledgerID'), dataSource : result, onSelect: function(currentNode){ $('#ledgerName').val(currentNode.name); } }); }); }); ``` ### b) 使用远程数据,dataSource为url ``` // ztree下拉菜单 $('#departName').ztreeSelect({ hidObj: $('#ledgerID'), dataSource : '<%=request.getContextPath()%>/ztree/findLedgerTreeAjax.do', onSelect: function(currentNode){ $('#ledgerName').val(currentNode.name); } }); ``` ### c) 使用远程数据,dataSource为function 此时可以根据页面的其他控件的值来动态获取数据,当需要的条件不成立时,不弹出ztree下拉菜单 ``` // ztree下拉菜单 $('#departName').ztreeSelect({ hidObj: $('#ledgerID'), dataSource : function(){ if(param){ alert('请先选择条件!') return false; } }, onSelect: function(currentNode){ $('#ledgerName').val(currentNode.name); } }); ``` ### d) 复选下拉菜单,加上checkEnable属性即可,如果需要设置勾选时的父子关联关系,可以设置chkboxType属性格式如下 { 'Y': 'ps', 'N': 'ps' },不关联可以不用设置 Y 属性定义 checkbox 被勾选后的情况; N 属性定义 checkbox 取消勾选后的情况; "p" 表示操作会影响父级节点; "s" 表示操作会影响子级节点。请注意大小写,不要改变 ``` // ztree复选下拉菜单 $('#departName').ztreeSelect({ hidObj: $('#ledgerID'), checkEnable: true, dataSource : '<%=request.getContextPath()%>/ztree/findLedgerTreeAjax.do', onSelect: function(currentNode){ $('#ledgerName').val(currentNode.name); } }); ``` ### e) 明细行中使用ztree ``` // 明细行中的树 $('input[name="detailTree"]').each(function(index, ele) { $(this).ztreeSelect({ width: '300px', treeId: $(ele).attr('id') || $(ele).attr('name') + index , hidObj: $('input[name="detailTreeID"]').eq(index), checkEnable: true, dataSource: function() { // 数据源 if(!$('#zTreeSelect').val()){ alert('请先选择下拉菜单!'); return false; } return "<%=request.getContextPath()%>/ztree/findLedgerTreeAjax.do"; }, onCheck: function(checkedNode){ var childNum = ""; for (var i=0, l=checkedNode.length; i 0 ) { childNum = childNum.substring(0, childNum.length-1); } $('input[name="other"]').eq(index).val(childNum); } }); }); ``` ### f) 左侧树菜单 ``` // 左侧树zTree $('#treeDemo').zTreeLeftMenu({ keepStatus: true, // 是否保持展开合并状态 checkEnable: true , // 是否显示复选框 chkboxType: { 'Y': 'ps', 'N': 'ps' }, dataSource: "<%=request.getContextPath()%>/ztree/findLedgerTreeAjax.do", // 数据源 beforeCheck: function(currentNode){ // 选中之前的回调 // alert(currentNode.id); } }); ``` ## 2. 参数 | 参数 | 说明 | | ------------- |------------- | | width | 下拉菜单宽度,默认为绑定的input的宽度 | | hidObj | 需要赋值的隐藏域对象 | | treeId | ztree树的Id,明细行时可以传name,单个树的控件不需要传 | |keepStatus |是否保存展开闭合状态 | |dataSource |数据源 | |beforeSelect |单选ztree选中节点之前的回调函数,参数为当前节点 | |onSelect | 单选ztree选中节点时的回调函数,参数为当前节点 | |initTree | 初始化方法,参数为treeObj即为原生的zTree对象,可以尽情的使用原生对象的方法| |defaultOptionLabel | 使用下拉菜单式添加默认的“--请选择--”或者全部 | |position |下拉菜单的弹出方向 可选值为 'auto' 'top' 'bottom' 默认为向下 'bottom' | |addHoverDom |鼠标悬停事件,参见demo | |removeHoverDom |删除鼠标悬停事件,配合addHoverDom使用,参见demo| |appendDom |在显示节点时追加显示属性,参见demo| |-----------------------|---------------------- | |checkEnable |是否开启复选 | |chkboxType |复选的关联关系,默认为不关联 即为 {'Y': '', 'N': ''} | |beforeCheck |复选ztree勾选节点之前的回调函数,参数为当前节点 | |onCheck |复选ztree勾选节点时的回调函数,参数为所有已勾选的节点 |