当前位置: 首页 > news >正文

小说网站做兼职.net微信网站开发

小说网站做兼职,.net微信网站开发,网站开发私人培训,淘宝网页设计模板如图#xff0c;同事让帮忙实现一个需求 从二级树节点开始#xff0c;同时选中的只能有一个二级树节点#xff0c;选中的二级树节点之下的子节点都可以被选中。否则不能被选中 直接上代码 需要注意的是#xff0c;文中树状图传递的数据是打平的数据#xff0c;设置代码是… 如图同事让帮忙实现一个需求 从二级树节点开始同时选中的只能有一个二级树节点选中的二级树节点之下的子节点都可以被选中。否则不能被选中 直接上代码 需要注意的是文中树状图传递的数据是打平的数据设置代码是下图而不是树状图!! :tree-config{transform: true, rowField: cguid, parentField: cparentid} 上述的这一点非常重要 下面的全乎的数据图 !DOCTYPE html htmlheadmeta charsetUTF-8!-- import CSS --!-- 引入样式 --link relstylesheet hrefhttps://cdn.jsdelivr.net/npm/vxe-tablelegacy/lib/style.css!-- 引入vue --script srchttps://cdn.jsdelivr.net/npm/vue2/script!-- 引入组件 --script srchttps://cdn.jsdelivr.net/npm/xe-utils/scriptscript srchttps://cdn.jsdelivr.net/npm/vxe-table3.6.9/scriptscript srcdata.js/script /headbodydiv idappvxe-table reftreeNode resizable :tree-config{transform: true, rowField: cguid, parentField: cparentid} :datatableData:checkbox-config{labelField: cguid, highlight: true,visibleMethod:()true,checkMethod:()true}checkbox-changeselectChangeEventvxe-column typecheckbox titleID width280 tree-node/vxe-columnvxe-column fieldcname titleName/vxe-column/vxe-table/div /body 1删除 2:节点禁用 3:筛选 scriptnew Vue({el: #app,data: function () {return {tableData: [], chooseDataTree: null,//选中的树节点的内容data2tree: [],//将打平数据封装成树结构}},created() {this.tableData dataList;//将数据改为树状结构children getJsonTree(dataList, 000000);//遍历需要这种结构this.data2tree {cguid: 000000,children,}},methods: {selectChangeEvent({ $table, indeterminates, row, records }) {console.log(arguments) //将当前选中的数据 被选中子节点到root的数据this.handleCheckChange([...records, ...indeterminates],row)},handleCheckChange(data,row) {//整理成树状图 let chooseTree getJsonTree(data, 000000) //当前选中节点是不是在第一次选中的树节点中let bool this.checkMethod({row,chooseTree,chooseList:data})console.log(bool:,bool)//不再就不让勾选同时提示if(!bool){this.$refs.treeNode.setCheckboxRow(row,false)VXETable.modal.message(当前无法被选中)}}, checkMethod({ chooseList,row ,chooseTree}) {//有选中的数据if (chooseList.length 0 ) { //已经存在选中的treeif(this.chooseDataTree){//已经选中的tree中是否存在当前选中的项let haveBool hasChildNode(this.chooseDataTree, row.cguid);return haveBool}//获取选中的树表格 let chooseTreeData chooseTree[0];//从树表格中获取第二级的节点只有选中节点数据let leve2Item chooseTreeData.children[0];//从完整的树表中获取完整的指定节点数据let getThenTree getLeafNode(this.data2tree, leve2Item.cguid); //将选中的二级节点保存起来 用于校验this.setChooseDataTree(getThenTree);//检查当前节点是不是在选中的二级节点之中 let haveBool hasChildNode(getThenTree, row.cguid);console.log(getThenTree:,getThenTree.cname,getThenTree);console.log(row:,row.cname,row)return haveBool} else {console.log(选中的内容空空如也)//将选中内容置空this.setChooseDataTree(null);return true}},//设置选中后的数据内容setChooseDataTree(data){this.chooseDataTree data}}})//讲打平的数据组将组为树状图function getJsonTree(data, cparentid) {var result [], temp;for (var i 0; i data.length; i) {if (data[i].cparentid cparentid) {if (cparentid 000000) data[i][disabled] true;var obj { name: data[i].cname, id: data[i].cguid };obj Object.assign(obj, data[i]);temp this.getJsonTree(data, data[i].cguid);if (temp.length 0) {obj.children temp;}result.push(obj);}}return result;}//指定的节点中是否包含相应的子节点function hasChildNode(root, cguid) {if (root null) {return false;}if (root.cguid cguid) {return true;}let found false;if (root.children root.children.length 0) {root.children.forEach(child {if (hasChildNode(child, cguid)) {found true;}});}return found;}//从树的表格中获取指定字节点内容数据function getLeafNode(root, cguid) {if (root null) {return null;}if (root.cguid cguid) {return root;}let result null;if (root.children root.children.length 0) {root.children.forEach(child {const leafNode getLeafNode(child, cguid);if (leafNode ! null) {result leafNode;}});}return result;}/script/html json打平的数据结构是 const dataList [{cguid: 5422,ccode: 01,cname: 01 资产,cparentid: 000000,ileaf: 0},{cguid: 70,ccode: 1004,cname: 1004 汇总科目,cparentid: 5422,ileaf: 0},{cguid: 78,ccode: 100401,cname: 100401 汇总科目1,cparentid: 70,ileaf: 1},{cguid: 95,ccode: 100402,cname: 100402 汇总科目2,cparentid: 70,ileaf: 1},{cguid: 47,ccode: 100403,cname: 100403 汇总科目3,cparentid: 70,ileaf: 1},{cguid: 87,ccode: 100404,cname: 100404 汇总科目4,cparentid: 70,ileaf: 0},{cguid: 97,ccode: 10040401,cname: 10040401 汇总科目4-1,cparentid: 87,ileaf: 1},{cguid: 41,ccode: 90000201,cname: 90000201 B2c1,cparentid: 31,ileaf: 1},{cguid: 77,ccode: 90000202,cname: 90000202 B2c2,cparentid: 31,ileaf: 1},{cguid: 428,ccode: 1001,cname: 1001 库xxx,cparentid: 422,ileaf: 1},{cguid: 430,ccode: 1002,cname: 1002 银xxx,cparentid: 422,ileaf: 1},]
http://www.lakalapos1.cn/news/46401/

相关文章:

  • 兰州做网站哪家专业佛山正规网站建设哪家好
  • 手机网站开发怎么收费无极平台网站
  • 高端广告公司网站建设网站设计制作的服务和质量
  • 网上做打字任务的网站网站信息抽查评估 短信
  • 黄页网站推广服务辽宁品质网站建设价格实惠
  • 怎么在手机上做网站广东网站开发设计
  • 什么行业做网站搜索外国大气网站
  • 中航建设集团网站系统商店
  • 可视化网站建设软件有哪些六安门户网站建设哪家好
  • 做食品网站有哪些无锡网站制作的公司
  • 做移动网站三合一网站建设方案
  • 网站产品数据如何恢复淄博乐达网站建设吧
  • 网站自创WordPress评论增加表情
  • 建网站需要了解什么自己制作app需要什么
  • 在一家传媒公司做网站编辑 如何遵义最新新冠病情况
  • 北京建设网站哪家好软件开发要什么学历
  • 贾汪建设局网站《网站建设》项目实训报告
  • 网站开发推荐书籍海报制作app
  • 网站集群建设编程加盟一般多少钱
  • 如何做响应式的网站国内精自品线一区91制片
  • 网页设计与网站建设全攻略pdf网页版微信二维码几分钟失效
  • 河南自助建站seo公司霍尔果斯建设局网站
  • 丽水建设厅网站网站设计培训班如何
  • 网站建设 运维 管理包括公司简历模板表格
  • 政务网站建设经验做法南宁网络公司
  • 织梦怎么在本地编辑多个网站网站架构和网络
  • 两个男生如何做网站汇天网络科技有限公司
  • 淮南移动网站建设宁夏建设职业技术学院官方网站
  • 公司网站与营销网站区别网站后缀类型
  • 项目商业网站建设方案昭通市网站建设