ztree_my.min.js

define(["js/plugins/ztree/js/jquery.ztree.exhide.min"],function(require,e,t){Mom.include("myCss_ztree",webcore,["js/plugins/ztree/css/metroStyle/metroStyle.css"]);var a=function(){that=this,this.lastValue,this.treeObj={},this.nodataHtml="<p class='nodata mgt-20'>no data</p>",this.getNodataDom=function(e){var t=$(e).find(".nodata");return t.length?t:($(e).append(this.nodataHtml),$(e).find(".nodata"))},this.loadData=function(e,t,a,n){n=n||{};var r=this.ztreeSetting(a,n);that.treeObj=$.fn.zTree.init(e,r,t),that.getNodataDom(e).hide();var o="name";t&&t.length>0?(n.defaultVals&&that.checkDefaultVal(that.treeObj,n.defaultVals),n.data&&n.data.key&&(o=n.data.key.name)):that.getNodataDom(e).show();var h=n.searchDom?n.searchDom:"#ztree_searchText";return that.registerSearch(that.treeObj,$(h),o),that.treeObj},this.loadJsonAsync=function(e,t,a,n){var r=that.ztreeSettingAsync(a,t,{async:{contentType:"application/json"}},n.defaultVals),o="name";r=$.extend(!0,{},r,n),that.treeObj=$.fn.zTree.init(e,r),n&&(n.defaultVals&&that.checkDefaultVal(that.treeObj,n.defaultVals),n.data&&n.data.key&&(o=n.data.key.name));var h=n.searchDom?n.searchDom:"#ztree_searchText";return that.registerSearch(that.treeObj,$(h),o),that.treeObj},this.loadFormAsync=function(e,t,a,n){var r=that.ztreeSettingAsync(a,t,{async:{contentType:"application/x-www-form-urlencoded"}},n.defaultVals),o="name";r=$.extend(!0,{},r,n),that.treeObj=$.fn.zTree.init(e,r),n&&(n.defaultVals&&that.checkDefaultVal(this.treeObj,n.defaultVals),n.data&&n.data.key&&(o=n.data.key.name));var h=n.searchDom?n.searchDom:"#ztree_searchText";return that.registerSearch(that.treeObj,$(h),o),that.treeObj},this.searchNodes=function(e,t,a){var n=$("#"+e.setting.treeId);if(that.lastValue!==a){that.lastValue=a;var r=e.getNodes();""==a?that.showNodesAndChild(e,r):(that.hideAllNodes(e,r),r=e.getNodesByParamFuzzy(t,a)),0==r.length?that.getNodataDom(n).show():(that.getNodataDom(n).hide(),that.showNodesAndParent(e,r))}},this.showNodesAndChild=function(e,t){t=e.transformToArray(t);for(var a=t.length-1;a>=0;a--)null!=t[a].getParentNode()?e.expandNode(t[a],!1,!1,!1,!1):e.expandNode(t[a],!0,!0,!1,!1),e.showNode(t[a]),that.showNodesAndChild(e,t[a].children)},this.showNodesAndParent=function(e,t){e.showNodes(t);for(var a=0,n=t.length;a<n;a++){for(e.showNode(t[a].getParentNode());null!=t[a].getParentNode();)e.expandNode(t[a].getParentNode(),!0,!1,!1),t[a]=t[a].getParentNode(),e.showNode(t[a].getParentNode());e.showNode(t[a].getParentNode()),e.expandNode(t[a].getParentNode(),!0,!1,!1)}},this.hideAllNodes=function(e,t){t=e.transformToArray(t);e.hideNodes(t)},this.ztreeSetting=function(e,t){that.multiple=1==e||"true"==e;var a={check:{enable:that.multiple},view:{selectedMulti:!1,dblClickExpand:!1,nameIsHTML:!0},data:{simpleData:{enable:!0,idKey:"id",pIdKey:"pId"}},callback:{beforeClick:function(e,t,a){},onClick:function(e,t,a){},onCheck:function(e,t,a){var n=$.fn.zTree.getZTreeObj(t);return a.checked&&n.expandNode(a,!0,!0,!1),!1}}};return that.multiple&&(a.check.chkboxType={Y:"p",N:"s"}),t&&(a=$.extend(!0,{},a,t)),a},this.ztreeSettingAsync=function(e,t,a,n){var r=this.ztreeSetting(e,{async:{enable:!0,url:t,autoParam:["id"],headers:{Accept:"application/json; charset=utf-8",Authorization:Mom.getAuthInfo()}},callback:{onAsyncSuccess:function(e,t,a,r){var o=$.fn.zTree.getZTreeObj(t);if(a){for(var h=a.children,s=0;s<h.length;s++)try{o.checkNode(h[s],a.checked,!0)}catch(e){}that.checkDefaultVal(o,n)}}}});return a&&(r=$.extend(!0,{},r,a)),r},this.registerSearch=function(e,t,a){if(0!=t.length){var n=t.prop("type")||"";"text"==n.toLowerCase()?($(t).keydown(function(t){if(13==t.keyCode)return that.searchNodes(e,a,$(this).val()),!1}),$(t).parent().find(".searchAll").click(function(){that.searchNodes(e,a,$(t).val())})):$(t).click(function(){var n=$(t).parent().find('input[type="text"]').val();that.searchNodes(e,a,n)})}},this.checkDefaultVal=function(e,t){if(t){var a=[],n="id";if("[object Array]"===Object.prototype.toString.call(t)?a=t:"object"==typeof t?(a=(t.value||"").split(","),n=t.prop||"id"):a=t.split(","),a.length>0){for(var r=[],o=0;o<a.length;o++)if(0<a[o].length){var h=e.getNodesByParam(n,a[o],null);h.length>0&&r.push(h[0])}for(var s=0;s<r.length;s++)r[s]&&(1==e.setting.check.enable?e.checkNode(r[s],!0,!1):e.selectNode(r[s]),e.expandNode(r[s].getParentNode(),!0,!1,!0))}}},this.getCheckValues=function(e,t){t=1==t||"true"==t,e=1==e||"true"==e;var a=[],n=[],r=[],o=[],h=!0;r=1==that.treeObj.setting.check.enable?that.treeObj.getCheckedNodes(!0):that.treeObj.getSelectedNodes();for(var s=0;s<r.length;s++){var i=r[s];if(1==t&&i.isParent){Mom.layMsg("不能选择父节点("+i.name+")请重新选择。"),h=!1;break}if(1==e&&0==i.level){Mom.layMsg("不能选择根节点("+i.name+")请重新选择。"),h=!1;break}if(a.push(i.id),n.push(i.name),o.push(i),1!=that.multiple)break}var d={success:h,id:a.join(",").replace(/u_/gi,""),name:n.join(","),nodes:o,zTreeObj:that.treeObj};return console.log("选中结果:",d),d}};return a});

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值