200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > Tree树状图的动态增删查改(上)生成树状图

Tree树状图的动态增删查改(上)生成树状图

时间:2023-12-24 23:46:45

相关推荐

Tree树状图的动态增删查改(上)生成树状图

一、刚学习项目里就有使用到树状图这个功能,树状图这个功能是要用到插件才能做的,我目前发现有两个插件的样式是比较好看的,一个是Layui里面自带的树组件,不过它的文档写的挺少的,而且看不懂;另一个是jquery的zTree_v3插件也是我现在要说的插件,它的配套文档写的挺多的,但是呢,好吧依然看不懂。

二、在经历了不断上网查找方法和不断地询问同学后,差不多花了一个星期才把它的增删查改的功能完成。虽然插件配套的案例它里面也有可以实现增改删的功能,但那些都是静态的样式基本上是写死了,要实现动态的修改就必须和数据库交互。

数据库设计样式

三、数据生成树型

1、首先在控制器查询分类表,查询的方法就是个单表的查询,查询出数据后,再分别把主键id、名称、父id 给到 id、name、pId 里面去。注意!插件只认这三个值名称写错都不行。

2、然后页面再通过下面的方法给树赋值,并且生成树型。我之前写的用json提交的方式会有一个异步的问题,它的有些功能就有时会比它先运行,这就出现了功能时有时无的现象,这并不是我们所希望的,在这里时就要把异步去掉

3、后面的就是默认加载时展开选择的方法,后面修改时回填可以把默认选择的id号改成一个变量,再从其他地方获取到值也是可以的

$(document).ready(function () {$.ajax({url: "/ClienteleManagement/Client/Classification",data: { ProjectId: "@ViewBag.ProjectId" },type: "post",dataType: "json",async: false,success: function (data) {$.fn.zTree.init($("#treeDemo"), setting, data);//实现加载树的方法}})//默认选中树形图的节点var treeObj = $.fn.zTree.getZTreeObj("treeDemo");var nodes = treeObj.getNodes();if (nodes.length > 0) {var node = treeObj.getNodeByParam("id", 1);//默认选择的id号 1if (node) {treeObj.selectNode(node);}}//全部展开树形节点 不写则只展开到选择的id号treeObj.expandAll(true);});

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。