插件介绍:轻量级表格树treegrid, 支持bootstrap 风格

本文介绍了如何利用jQuery Treegrid插件创建一个支持动态加载的表格树结构,适用于Bootstrap风格。用户需要在后台获取包含pid、id、level等关键信息的数据,并根据样式拼接以实现预期效果。官网提供了详细示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

官网:http://maxazan.github.io/jquery-treegrid/


引入文件:

<link rel="stylesheet" href="statics/treeGrid/jquery.treegrid.css">


<script type="text/javascript" src="statics/treeGrid/jquery.treegrid.js"></script>
        <script type="text/javascript" src="statics/treeGrid/jquery.treegrid.bootstrap3.js"></script>

用法:
其静态页面:

 <table class="table tree-2 table-bordered table-striped table-condensed">
                <tr class="treegrid-1">
                    <td>Root node 1</td><td>Additional info</td>
                </tr>
                <tr class="treegrid-2 treegrid-parent-1">
                    <td>Node 1-1</td><td>Additional info</td>
                </tr>
                <tr class="treegrid-3 treegrid-parent-1">
                    <td>Node 1-2</td><td>Additional info</td>
                </tr>
                <tr class="treegrid-4 treegrid-parent-3">
                    <td>Node 1-2-1</td><td>Additional info</td>
                </tr>
                <tr class="treegrid-5">
                    <td>Root node 2</td><td>Additional info</td>
                </tr>
                <tr class="treegrid-6 treegrid-parent-5">
                    <td>Node 2-1</td><td>Additional info</td>
                </tr>
                <tr class="treegrid-7 treegrid-parent-5">
                    <td>Node 2-2</td><td>Additional info</td>
                </tr>
                <tr class="treegrid-8 treegrid-parent-7">
                    <td>Node 2-2-1</td><td>Additional info</td>
                </tr>        
            </table>    

 $(document).ready(function() {
                $('.tree').treegrid();
                $('.tree-2').treegrid({
                    expanderExpandedClass: 'glyphicon glyphicon-minus',
                    expanderCollapsedClass: 'glyphicon glyphicon-plus'
                });

            });

根据其静态页面我们可以看到,只需class按照其样式拼接就可以达到效果,所以可以去后台取数据,反给前台,后台的数据包含的信息要有
pid id level(节点等级) 等关键信息,当然这个不是必须,可以自行处理,只需知道想达到效果就要按照样式拼接.


效果展示(代码不全,仅供参考):

 <table class="table tree-2 table-bordered table-striped table-condensed">
                                  <thead>
                                    <th>模版名称</th>
                                    <th>检查评定</th>
                                    <th>备注</th>
                                  </thead>
                                  <tbody id="treeGrid">

                                  </tbody>
                              </table>
   js:                           
    //查询定制模板项
           $("#makeProject").change(function () {
               var mid = $(this).val();
               $.get("mvc/safeCheck/get-make-Project/"+mid+"?"+Math.random(), function (resp) {
                   var zNodes = resp.data;
                   //清空
                   $("#treeGrid").html("");
                   $.each(zNodes, function (index,item) {
                       if(item.level == 1) {//一级
                           $("#treeGrid").append("" +
                                   " <tr class='treegrid-"+item.id+"'>"
                                        +"<td>"+item.name+"</td><td> </td><td>"+" "+"</td>"
                           +"</tr>");
                       } else if (item.level == 2) {//二级
                           $("#treeGrid").append("" +
                                   " <tr class='treegrid-"+item.id+" treegrid-parent-"+item.pId+"'>"
                                   +"<td>"+item.name+"</td><td> </td><td>"+" "+"</td>"
                                   +"</tr>");
                       } else if (item.level == 3) {//三级
                           $("#treeGrid").append("" +
                                   " <tr class='treegrid-"+item.id+" treegrid-parent-"+item.pId+"'>"
                                   +"<td>"+item.name+"</td><td> </td><td>"+" "+"</td>"
                                   +"</tr>");
                       } else{//四级
                           if (item.value){//分值类型
                               $("#treeGrid").append("" +
                                       " <tr id='"+item.id+"' class='treegrid-"+item.id+" treegrid-parent-"+item.pId+"'>"
                                       +"<td>"+item.name+"</td><td style='width: 20%'>"+"分值:&nbsp;<input  style='width: 40%' value='10' type= 'number' >&nbsp;&nbsp;满分:"+item.value+"</td><td>"+"<input type='text'>"+"</td>"
                                       +"</tr>");
                           }else {//是否合格项
                               $("#treeGrid").append("" +
                                       " <tr id='"+item.id+"' class='treegrid-"+item.id+" treegrid-parent-"+item.pId+"'>"
                                       +"<td>"+item.name+"</td><td style='width: 10%'>"+"<input type= 'checkbox' value='Y' onclick='setVal($(this));' >不合格"+"</td><td>"+"<input type='text'>"+"</td>"
                                       +"</tr>");
                           }
                       }
                   });
                   $('.tree-2').treegrid({
                       expanderExpandedClass: 'glyphicon glyphicon-minus',
                       expanderCollapsedClass: 'glyphicon glyphicon-plus'
                   });

               }, "json");

           });
后台实体类字段举例:
    private String id;
    private String name;
    private String pid;
    private String levelType;//等级

这里写图片描述

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值