温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

怎么在layui中使用tree组件

发布时间:2021-04-19 17:19:45 阅读:487 作者:Leah 栏目:web开发
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

怎么在layui中使用tree组件?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

layui是什么

layui是一款采用自身模块规范编写的前端UI框架,它遵循原生HTML/CSS/JS的书写与组织形式,门槛极低,适合新手,并且它还提供了丰富的内置模块,他们皆可通过模块化的方式按需加载,从核心代码到API的每一处细节都经过精心雕琢,非常适合界面的快速开发,能够作为PC网页端后台系统与前台界面的速成开发方案。

HTML:

<div class="layui-btn-container">
  <button class="layui-btn layui-btn-sm" type="button" lay-demo="getChecked">获取选中节点数据</button>
  <button class="layui-btn layui-btn-sm" type="button" lay-demo="setChecked">勾选指定节点</button>
  <button class="layui-btn layui-btn-sm" type="button" lay-demo="reload">重载实例</button>
</div>
<div class="demoTable">
  <div class="layui-inline">
    <input type="text" class="layui-input" id="tree_name" autocomplete="off" />
  </div>
  <button class="layui-btn" id="btn_query">搜索</button>
</div>
<div id="test1" class="demo-tree demo-tree-box"></div>

JavaScript:

layui.use(['tree''util'], function(){
    var $ = layui.$;
    var tree = layui.tree
        ,layer = layui.layer
        ,util = layui.util
    //模拟数据
        ,data1 = [{
          title'江西'
          ,id1
          ,children: [{
            title'南昌'
            ,id1000
            ,children: [{
              title'青山湖区'
              ,id10001
            },{
              title'高新区'
              ,id10002
            }]
          },{
            title'九江'
            ,id1001
          },{
            title'赣州'
            ,id1002
          }]
        },{
          title'广西'
          ,id2
          ,children: [{
            title'南宁'
            ,id2000
          },{
            title'桂林'
            ,id2001
          }]
        },{
          title'陕西'
          ,id3
          ,children: [{
            title'西安'
            ,id3000
          },{
            title'延安'
            ,id3001
          }]
        },{
          title'四川(可跳转)'
          ,id4
          ,href'https://www.layui.com/'
          ,children: [{
            title'成都'
            ,id3000
            ,checkedtrue //默认选中
          },{
            title'雅安'
            ,id3001
          }]
        }];
 
    //常规用法
    tree.render({
      elem'#test1' //默认是点击节点可进行收缩
      ,data: data1
      ,id'demoId1'
      ,showCheckboxtrue //是否显示复选框
      ,isJumptrue //是否允许点击节点时弹出新窗口跳转
      ,showLinetrue //是否开启连接线
      ,edit: ['add''update''del'//开启操作节点的图标
      ,clickfunction(obj){
        var data = obj.data//获取当前点击的节点数据
        layer.msg('状态:'+ obj.state + '<br>节点数据:' + JSON.stringify(data));
      }
    });
 
    //按钮事件
    util.event('lay-demo', {
      getCheckedfunction(othis){
        var checkedData = tree.getChecked('demoId1'); //获取选中节点的数据
 
        layer.alert(JSON.stringify(checkedData), {shade:0});
        console.log(checkedData);
      }
      ,setCheckedfunction(){
        tree.setChecked('demoId1', [34]); //勾选指定节点
      }
      ,reloadfunction(){
        //重载实例
        tree.reload('demoId1', {});
      }
    });
 
    //搜索节点值
    $('#btn_query').click(function () {
      var name = $("#tree_name").val(); //搜索值
      var elem = $("#test1").find('.layui-tree-txt').css('color'''); //搜索文本与设置默认颜色
      if (!name) {
        return//无搜索值返回
      }
      elem.filter(':contains(' + name + ')').css('color''#FFB800'); //搜索文本并设置标志颜色
      elem.parents('.layui-tree-pack').prev().find('.layui-tree-iconClick').click(); //展开选项
      //console.log(elem);
    })
 
  });

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注亿速云行业资讯频道,感谢您对亿速云的支持。

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI

开发者交流群×