博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
jstree的数据后台生成
阅读量:6162 次
发布时间:2019-06-21

本文共 1193 字,大约阅读时间需要 3 分钟。

jstree的数据后台生成

jstree在前台的HTML格式如:

<div id="demo1" class="demo" style="height:100px;">

    <ul>
        <li id="phtml_1">
            <a href="#">Root node 1</a>
            <ul>
                <li id="phtml_2">
                    <a href="#">Child node 1</a>
                </li>
                <li id="phtml_3">
                    <a href="#">Child node 2</a>
                </li>
            </ul>
        </li>
        <li id="phtml_4">
            <a href="#">Root node 2</a>
        </li>
    </ul>
</div>

 

后台生成这种格式的数据:(无限级,递归)

private string GetTreeString(int pid)

       {
           IEnumerable<Model.TreesModel> TreesModelList= TreesBLL.GetList();
           return "<ul>" + AddTreeNodeString(0, "所有栏目", customClassList) + "</ul>";
       }

       private string AddTreeNodeString(int nodeId, string nodeName,  IEnumerable<Model.TreesModel> list)

       {
           string nodeString = "";

           //找出List 中以nodeId为ParentID的节点

           IEnumerable<Model.TreesModel> childNodes = list.Where(i => i.PId== nodeId).OrderBy(i => i.SortNumber);

           int nodeCount = childNodes.Count();

           if (nodeCount == 0)

           {
               //如果没找到子节点,返回<li></li>
               nodeString = "<li><a href='#'>" + nodeName + "</a></li>";
           }
           else
           {
               //如果找到子节点,增加<ul>
               nodeString = "<li><a href='#'>" + nodeName + "</a><ul>";

               //按子节点循环,每次掉自己增加一个节点的nodeString

               foreach (var item in childNodes)
               {
                   nodeString += AddTreeNodeString(item.Id, item.Name, list);
               }
               //增加</ul>
               nodeString += "</ul></li>";
           }

           return nodeString;

       }

转载地址:http://bqhfa.baihongyu.com/

你可能感兴趣的文章
请问华为三层交换机里面的那个从IP是个什么意思? -
查看>>
kFeedback开源啦
查看>>
大数据传输,文件传输的专业解决方案!
查看>>
阿里云专家穆轩的《杭州九年程序员之“修炼”手册》
查看>>
JQuery:deferred对象的方法
查看>>
eyoucms问答 百度权重是什么
查看>>
win10中遇到qq视频时摄像头打不开没反应的解决方法
查看>>
介绍自己的一个Android插桩热修复框架项目QuickPatch
查看>>
关于textarea的ie9的maxlength不起作用的问题,请参考如下URL解决。
查看>>
Solr Facet 查询
查看>>
C++类的继承一
查看>>
数据库分库分表(sharding)系列(五) 一种支持自由规划无须数据迁移和修改路由代码的Sharding扩容方案...
查看>>
巧用VMware Workstation的clone来制作虚拟机模板
查看>>
Spring-Mybatis MapperScannerConfigurer 取不到PropertyPlaceholderConfigurer里的值
查看>>
HP DL380G4服务器前面板指示灯的含义
查看>>
数据结构_树结构
查看>>
常用URL地址
查看>>
每天一个linux命令(19):find 命令概览
查看>>
MySQL kill操作
查看>>
windows下看端口占用
查看>>