SpriingMVC--树形

开发工具与关键技术:Visual Studio 2015  、C#、SpriingMVC                         

作者: 林锦铅   ;撰写时间: 2019  年 01 月 19 日

/*喜欢树形的同学推荐一个网站: http://www.treejs.cn/v3/api.php

1、页面样式(根据个人喜好设置zTree样式)

Eg:

<ul id=”tree”  class=”ztree” style=”overflow:auto;  border:1px solid rgb(225,225,225);

Border-radius:5px;background:rgb(242,242,242);padding:10px 10px 15px 15px;

Height:469px;margin-top:10px; font-size:12px;”>

</ul>

2、引入zTreeCSS插件

Eg:

<link href="~/Content/zTreeStyle/zTreeStyle.css" rel="stylesheet" />

JQuery

Eg:

  <script src="~/Content/zTreeStyle/js/jquery.ztree.core.js"></script>

  <script src="~/Content/zTreeStyle/js/jquery.ztree.excheck.min.js"></script>

  <script src="~/Content/zTreeStyle/js/jquery.ztree.exedit.min.js"></script>

3、代码讲解

Eg:    

 var zTreeObject;

 

        // 病区树形

        $(function () {

            var setting = {

                view: { selectedMulti: true }//设置是否允许同时选中多个节点   、支持

            };

 

            // 绑定树形

            $.ajax({

                type: 'post',// 表示异步加载采用 post 方法请求      post /get

                async: false,//        

                contentType: "application/json",//可以满足 .Net 的编程需要,按照 JSON 格式提交参数

                url: "/conthacdSelesthing/clipboard/Tree",

                dataType: "json",//可以满足JSON请求

                success: function (data) {

                    $.fn.zTree.init($("#tree"),  

                        setting, data);

                }

            });

        });

 

 

 

控制器

Eg:

public ActionResult Tree()

        {

            StringBuilder sbTree = new StringBuilder();

            var dbThepatientab = (from tbThepatientable in myModels.SYS_Thepatientable select tbThepatientable).ToList();

            sbTree.Append("[");

            for (int j = 0; j < dbThepatientab.Count; j++)

            {

                int ThepatientableID = dbThepatientab[j].ThepatientableID;

 

                ntable

                      var listInpatientwardchart = (from tbThepatientable in myModels.SYS_Thepatie                        join tbThepatientableMINGXIBIA in myModels.PW_ThepatientableMINGXIBIA  on tbThepatientable.ThepatientableMINGXIID equals  tbThepatientableMINGXIBIA.ThepatientableMINGXIID

                                     join tbInpatientwardchart in myModels.PW_Inpatientwardchart on tbThepatientableMINGXIBIA.InpatientwardID equals tbInpatientwardchart.InpatientwardID

                                     where tbThepatientableMINGXIBIA.ThepatientableID == ThepatientableID

                                     select tbInpatientwardchart

                                  ).ToList();

                if (listInpatientwardchart.Count > 0)  

                {

                    sbTree.Append("{\"id\":\"" + dbThepatientab[j].ThepatientableID + "\",\"name\":\"" + dbThepatientab[j].Name.Trim() + "\",\"Type\":\"" + 0 + "\",\"open\":\"" + true + "\",\"children\":[");

                    for (int i = 0; i < listInpatientwardchart.Count; i++)

                    {

                        sbTree.Append("{\"id\":\"" + listInpatientwardchart[i].InpatientwardID + "\",\"name\":\"" + listInpatientwardchart[i].Inpatientwardname.Trim() + "\",\"Type\":\"" + 1 + "\"},");

                    }

                    sbTree.Remove(sbTree.Length - 1, 1);

                    sbTree.Append("]},");

                }

                else

                {

                    sbTree.Append("{\"id\":\"" + dbThepatientab[j].ThepatientableID + "\",\"name\":\"" + dbThepatientab[j].Name.Trim() + "\",\"Type\":\"" + 0 + "\"},");

                }

            }

            sbTree.Remove(sbTree.Length - 1, 1);

            sbTree.Append("]");

 

            return Content(sbTree.ToString());

        }

 

 

 

数据类型

Eg:

{[

{"id":"2","name":"陈安","Type":"0","open":"True","children":[{"id":"1","name":"一病区","Type":"1"}]},

{"id":"3","name":"玉垒","Type":"0","open":"True","children":[{"id":"2","name":"二病区","Type":"1"}]},

{"id":"4","name":"雪莉","Type":"0","open":"True","children":[{"id":"3","name":"三病区","Type":"1"}]},

{"id":"7","name":"杨静雯","Type":"0","open":"True","children":[{"id":"4","name":"四病区","Type":"1"}]}

]}

 

 

循环一次数据

{"id":"7","name":"杨静雯","Type":"0","open":"True","children":[{"id":"4","name":"四病区","Type":"1"}]}

 

 

Open: 记录 treeNode 节点的 展开 / 折叠 状态。

Children: 节点的子节点数据集合

  sbTree.Append  设置数据文件的搜索路径

  sbTree.Remove   移除

 

猜你喜欢

转载自blog.csdn.net/weixin_44548366/article/details/86559008