layui案例

本文介绍了layui前端框架在实际项目中的应用,包括UI设计、组件使用以及与后端交互的案例,展示了其简洁高效的特性。

 

<div class="layui-fluid">
    <div class="layui-row layui-col-space15">
        <div class="layui-col-md12">
            <div class="layui-card">
                <div class="layui-card-body ">
                    <form class="layui-form layui-col-space5" id="form">
                        <div class="layui-inline layui-show-xs-block">
                            <select name="deptNo" id="dept_list" >
                            </select>
                        </div>
                        <div class="layui-inline layui-show-xs-block">
                            <input type="text" name="username" id="username"  placeholder="请输入用户名" autocomplete="off" class="layui-input">
                        </div>
                        <div class="layui-inline layui-show-xs-block">
                            <button class="layui-btn" lay-submit lay-filter="emp_search"><i class="layui-icon">&#xe615;</i></button>
                        </div>
                    </form>
                </div>
                <div class="layui-card-body layui-table-body layui-table-main" lay-filter="emp_like">
                    <table class="layui-table layui-form" id="emp_list" lay-filter="empList">
                      
                    </table>
                </div>
            </div>
        </div>
    </div>
</div>
</body>

 
<script type="text/html" id="empBarDemo">
   <a title="查看" lay-event="emp_detail"><i class="layui-icon">&#xe63c;</i></a>
</script>

<script src="./js/jquery-3.3.1.js"></script>
<script>

    
    layui.use(['table','form'],function () {
        var table = layui.table,
        form = layui.form;
        
        $.ajax({
            type:'get',
            url:'http://localhost:8080/ycoa/manage/dept/list',
            async:false,
            success:function (data) {
                if(data.status == 0){
                    var datas = data.data;
                    var html_2 = "";
                    for(var i=0;i<datas.length;i++){
                        html_2+='<option value="'+datas[i].deptno+'">'+datas[i].deptname+'</option>';
                    }
            
                    html_2='<option value="" >请选择</option>'+html_2;
                    $("#dept_list").html(html_2);
                    form.render(); //重新渲染  
                }
            }
        });
 
        
        //方法渲染
        var tableIns = table.render({
            elem: '#emp_list',
            url: 'http://localhost:8080/ycoa/manage/emp/like', //设置异步接口
            method: 'post',
            toolbar: true,
            title: '员工数据表',
            page: {
                    layout: ['limit', 'count', 'prev', 'page', 'next', 'skip'],
                    curr: 1,
                    groups: 6,
                    limit: 20
            },
            cols: [[
                {checkbox: true,fixed: true},
                {field:'userId',title: 'userId'},
                {field:'username',title: '用户名'},
                {field:'empno',title: '员工号'},
                {field:'deptName',title: '部门名称'},
                {field:'msgName',title: '部门上级'},
                {field:'job',title: '职位'},
                {field:'email',title: '邮箱'},
                {field:'phone',title: '电话'},
                {field:'comm',title: '虚拟币',sort: true,templet:function(res){
                    return '<a class="layui-table-link" lay-event="get_emp_comm_detail">'+res.comm+'</a>'
                }},
                {field:'hiredate',title: '受雇日期'},
                {field:'sal',title: '薪金'},
                {field:'right',title: '操作',toolbar:'#empBarDemo'}
            ]] //设置表头
        });
        
        
        //监听工具条    tool是工具条事件名,empList是table原始容器的属性 lay-filter="对应的值"
        table.on('tool(empList)',function(obj){
            
            var data = obj.data;
            var layEvent = obj.event;
            
            if(layEvent === 'emp_detail'){ //查看员工信息
                
                xadmin.open('虚拟币明细','./employee-add.html?userId='+data.userId+'');
                
            }else if(layEvent === 'get_emp_comm_detail'){ //查看员工虚拟币信息
                
                xadmin.open('虚拟币明细','./employee-add.html?userId='+data.userId+'');
                
            }else if(layEvent === 'LAYTABLE_EXPORT'){   //数据导出
                table.exportFile(tableIns.config,data,'xls');
            }
            
        });


        //搜索
        form.on('submit(emp_search)',function(data){
            var username = $('#username').val();
            var deptNo = $('#dept_list').val();
            tableIns.reload({
                where:{
                    'username': username,
                    'deptNo': deptNo
                },
                page:{
                    curr: 1
                }
            });
            return false;
        });
        

    });

</script>

 

删除:

if(layEvent === 'rp_del'){ 
    layer.confirm('真的删除行么', function(index){
        //向服务端发送删除指令
      	$.ajax({
      	    type:"post",
      	    url:"http://localhost:8080/ycoa/manage/rewardOrPunish/delete",
      	    data: {id:data.id},
      	    success: function(data){
      	        console.log(data.status);
      	        if (data.status == 0) {
      	            obj.del(); //删除对应行(tr)的DOM结构,并更新缓存
      	            layer.alert("删除成功", {icon: 6});
                }else {
                    var msg = data.msg;
                    layer.alert(msg, {icon: 5});
                }
      	       }
      	});
        layer.close(index);
    });
}
        	

 

layui treetable 是一款基于 layui 框架的树形表格插件。它可以帮助开发者快速地构建树状表格,并实现树的展开、折叠、查找、排序等功能。 使用 layui treetable 插件的案例可以有很多种,下面以一个商品分类管理的案例来说明。 首先,我们需要创建一个表格,用来展示商品分类的树状结构。通过 layui 的 table 模块和 treetable 插件,我们可以很方便地实现这一功能。在页面加载时,调用 treetable.render() 方法,将数据渲染成树状表格,并将其显示在页面上。 接着,我们可以添加一些操作按钮,例如新增分类、编辑分类、删除分类等。当用户点击这些按钮时,通过调用 treetable 方法,可以实现对分类树的增删改操作。例如,当用户点击新增分类按钮时,会弹出一个对话框,用户可以在对话框中填写分类的名称、父类别等信息,然后将这些信息通过 ajax 提交到后台进行保存。保存成功后,通过调用 treetable 的 addNode() 方法,在表格中新增对应的节点。 另外,我们可以为表格添加一些附加功能,例如展开全部、折叠全部、搜索分类等。通过调用 treetable 的相关方法,我们可以实现这些功能。例如,当用户输入关键词进行搜索时,我们可以调用 treetable 的 search() 方法,根据关键词在树状表格中查找匹配的节点,并将这些节点高亮显示。 总的来说,layui treetable 插件是一个非常实用的工具,可以帮助开发者快速地构建树状表格,并实现相关的操作和功能。无论是商品分类管理、组织结构管理还是其他需要以树状结构展示的数据,都可以通过 layui treetable 实现。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值