国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > JavaScript > 正文

實(shí)例詳解ztree在vue項(xiàng)目中使用并且?guī)в兴阉鞴δ?/h1>
2019-11-19 13:10:11
字體:
供稿:網(wǎng)友

zTree 是一個(gè)依靠 jQuery 實(shí)現(xiàn)的多功能 “樹插件”。優(yōu)異的性能、靈活的配置、多種功能的組合是 zTree 最大優(yōu)點(diǎn)。

上篇文章給大家介紹了vue中如何使用ztree,大家可以點(diǎn)擊查看。

之前博客介紹過怎么在vue里展示以及獲取點(diǎn)擊元素的內(nèi)容,此文章之介紹搜索功能

html

<el-form-item label="機(jī)構(gòu)" class="ztree-par"><i class="icon_org"></i><input type="text" placeholder="請(qǐng)輸入機(jī)構(gòu)" id="ser" v-model="ruleForm.mechanism" @keyup.enter="search_ztree('treeDemo', 'ser')" @click.stop = "control()" class="login-input"><el-button icon="el-icon-arrow-down" @click.stop="control()"></el-button><div class="ztree-z" v-show="ztreeCon"><ul id="treeDemo" class="ztree"></ul></div></el-form-item>

main.js需要單獨(dú)引入

import "./../static/ztree/js/jquery.ztree.exhide-3.5.min.js";

如果不單獨(dú)引入這個(gè)會(huì)獲取不到很多元素,在input回車事件或者點(diǎn)擊事件的時(shí)候直接執(zhí)行此事件即可

代碼部分

expand_ztree(treeId) {  var treeObj = $.fn.zTree.getZTreeObj(treeId);  treeObj.expandAll(true); },close_ztree(treeId) {  var treeObj = $.fn.zTree.getZTreeObj(treeId);  var nodes = treeObj.transformToArray(treeObj.getNodes());  var nodeLength = nodes.length;  for (var i = 0; i < nodeLength; i++) {  if (nodes[i].id == '0') {   //根節(jié)點(diǎn):展開   treeObj.expandNode(nodes[i], true, true, false);  } else {   //非根節(jié)點(diǎn):收起   treeObj.expandNode(nodes[i], false, true, false);  }  } },search_ztree(treeId, searchConditionId) {  this.searchByFlag_ztree(treeId, searchConditionId, ""); },searchByFlag_ztree(treeId, searchConditionId, flag) {  //<1>.搜索條件  var searchCondition = $('#' + searchConditionId).val();  //<2>.得到模糊匹配搜索條件的節(jié)點(diǎn)數(shù)組集合  var highlightNodes = new Array();  if (searchCondition != "") {  var treeObj = $.fn.zTree.getZTreeObj(treeId);  highlightNodes = treeObj.getNodesByParamFuzzy("name", searchCondition, null);  }  //<3>.高亮顯示并展示【指定節(jié)點(diǎn)s】  this.highlightAndExpand_ztree(treeId, highlightNodes, searchCondition, flag); },highlightAndExpand_ztree(treeId, highlightNodes, tx, flag) {  var treeObj = $.fn.zTree.getZTreeObj(treeId);  //<1>. 先把全部節(jié)點(diǎn)更新為普通樣式  var treeNodes = treeObj.transformToArray(treeObj.getNodes());  for (var i = 0; i < treeNodes.length; i++) {  treeNodes[i].highlight = false;  treeObj.updateNode(treeNodes[i]);  }  //<2>.收起樹, 只展開根節(jié)點(diǎn)下的一級(jí)節(jié)點(diǎn)  this.close_ztree(treeId);  //<3>.把指定節(jié)點(diǎn)的樣式更新為高亮顯示,并展開  if (highlightNodes != null) {  for (var i = 0; i < highlightNodes.length; i++) {   if (flag != null && flag != "") {   if (highlightNodes[i].flag == flag) {    //高亮顯示節(jié)點(diǎn),并展開    highlightNodes[i].highlight = true;    treeObj.updateNode(highlightNodes[i]);    //高亮顯示節(jié)點(diǎn)的父節(jié)點(diǎn)的父節(jié)點(diǎn)....直到根節(jié)點(diǎn),并展示    var parentNode = highlightNodes[i].getParentNode();    var parentNodes = this.getParentNodes_ztree(treeId, parentNode);    treeObj.expandNode(parentNodes, true, false, true);    treeObj.expandNode(parentNode, true, false, true);   }   } else {    treeObj.updateNode(highlightNodes[i]);   var parentNode = highlightNodes[i].getParentNode();   var parentNodes = this.getParentNodes_ztree(treeId, parentNode);   treeObj.expandNode(parentNodes, true, false, true);   treeObj.expandNode(parentNode, true, false, true);   }  }  } },getParentNodes_ztree(treeId, node) {  if (node != null) {  var treeObj = $.fn.zTree.getZTreeObj(treeId);  var parentNode = node.getParentNode();  return this.getParentNodes_ztree(treeId, parentNode);  } else {  return node;  } }

展示

這個(gè)有個(gè)小小的bug,就是做鍵盤按下或者抬起的時(shí)候會(huì)有問題,https://yq.aliyun.com/articles/308489,這個(gè)文章就解決了這個(gè)問題

總結(jié)

以上所述是小編給大家介紹的ztree在vue項(xiàng)目中使用并且?guī)в兴阉鞴δ埽M麑?duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)武林網(wǎng)網(wǎng)站的支持!

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表

主站蜘蛛池模板: 英德市| 宁都县| 黎城县| 墨江| 兴隆县| 钦州市| 新巴尔虎右旗| 隆子县| 丹寨县| 乌兰察布市| 汉源县| 苗栗县| 正镶白旗| 兰考县| 姜堰市| 河间市| 新化县| 武乡县| 福建省| 探索| 永丰县| 延川县| 双鸭山市| 西乡县| 禄丰县| 永靖县| 察隅县| 内江市| 大冶市| 广丰县| 合水县| 南漳县| 湟源县| 全南县| 从江县| 汶川县| 汨罗市| 湘潭县| 清流县| 潞城市| 外汇|