layui学习汇总

表格加分页渲染方法

<div class="table-container layui-form" lay-filter="checkbox-form">
    <table class="layui-table">
        <thead>
            <tr>
                <th>用户名</th>
                <th>联系方式</th>
                <th>部门</th>
                <th>区域</th>
                <th>版本</th>
                <th>所属单位</th>
                <th>是否安装</th>
                <th>是否在线</th>
                <th>在线时长</th>
            </tr>
        </thead>
        <tbody id="tbody">

        </tbody>
    </table>
    <div id="page"></div>
</div>

模板

<script id="table-tpl" type="text/html">
    {{#  layui.each(d, function(index, item){ }}
        <tr>
            <td>{{ item.realname  }}</td>
            <td>{{ item.mobile }}</td>
            <td>{{ item.deparetname }}</td>
            <td>{{ item.area }}</td>
            <td>{{ item.version }}</td>
            <td>{{ item.organizename }}</td>
            <td><input disabled type="checkbox" name="close" {{ item.isinstall ? 'checked' : '' }} lay-skin="switch" lay-text="是|否"></td>
            <td>{{ item.online ? '在线' : '离线'}}</td>
            <td>{{ item.onlinetime }}</td>
        </tr>
    {{#  }); }}
    {{#  if(d.length === 0){ }}
        <tr><td colspan="9">暂无数据</td></tr>
    {{#  } }}
</script>

分页器渲染和点击事件

设置全局变量flag = true  当点击分页器后设置flag=false,就不会自动去在去渲染一次了

当点击查询时设置flag = true,重新开启分页

laypage.render({
    elem: 'page',
    limit: 10,
    count: res.total, //数据总数
    jump: function (obj, first) {
        flag = false;
        page = obj.curr;
        //首次不执行
        if (!first) {
            initData.getStatisticalList(page, {
                area: $('#area').val(),
                organize: $('#units').val(),
                deparment: $('#department').val(),
                vision: $('#vision').val(),
                startTime: $('#start-date').val(),
                endTime: $('#end-date').val(),
                fast: ''
            });
        }
    }
});

表格模板渲染 

laytpl($('#table-tpl').html()).render(res.rows.listData, function (html) {
    $('#tbody').html(html);
    // 对开关进行重新渲染
    form.render('checkbox', 'checkbox-form');
});

下拉选择框通过ajax渲染

<select id="units" lay-filter="select-form"></select>
$.ajax({
    url: IP + '/BaseManage/Organize/GetTreeJson',
    dataType: 'json',
    success: function (res) {
        if (res instanceof Array && res.length != 0) {
            var html = '<option value="">全部</option>';
            for (var i = 0; i < res.length; i++) {
                html += '<option value="' + res[i].id + '">' + res[i].text + '</option>';
            }
            $('#units').html(html);
            form.render('select', 'select-form');
        } else {
            $('#units').html('');
        }
    }
});

根据sessionStorage获取主页加载并记忆

var position = sessionStorage.getItem("qiyunFront_indexTab");
if (position) {
    $('.layui-side .layui-nav-item').removeClass('layui-this');
    layui.each($('.layui-side .layui-nav-item'), function () {
        if ($(this).find('a').attr('lay-href') == position) {
            $(this).addClass('layui-this');
        }
    });
    index.loadHome({
        menuPath: position,
        menuName: '<i class="layui-icon layui-icon-home"></i>'
    });
} else {
    index.loadHome({
        menuPath: 'home/index.html',
        menuName: '<i class="layui-icon layui-icon-home"></i>'
    });
}

$('.layui-side .layui-nav-item').click(function () {
    var indexTab = $(this).find('a').attr('lay-href');
    sessionStorage.setItem('qiyunFront_indexTab', indexTab);
})


// 这种方法有错误
var position = JSON.parse(sessionStorage.getItem("qiyunFront_tempData"));
if (position && position.tabPosition) {
    $('.layui-side .layui-nav-item').removeClass('layui-this');
    layui.each($('.layui-side .layui-nav-item'), function () {
        if ($(this).find('a').attr('lay-href') == position.tabPosition) {
            $(this).addClass('layui-this');
        }
    });
    index.loadHome({
        menuPath: position.tabPosition,
        menuName: '<i class="layui-icon layui-icon-home"></i>'
    });
} else {
    index.loadHome({
        menuPath: 'home/index.html',
        menuName: '<i class="layui-icon layui-icon-home"></i>'
    });
}
发布了121 篇原创文章 · 获赞 13 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/Vansal/article/details/103366259
今日推荐