用了一段时间,感觉layui比bootstrap 方便了很多。在js操作上比bootstrap减少了许多的代码量。

今天遇到需要前台分页。当然,不是表格,如果是表格的话。使用yalui table和bootstrap table都很简单。

但是今天是要随意分页。任意标签。

看了看官方文档。也不是很懂,网上看了看。最后涂涂改改。终于中了出来。开心ing

人生就像魔法书,涂涂改改又是几千年。

需求:前台显示列表。<ul>  <li>

   分页操作

    但是后台一直都是表格控件来完成的。这不用表格头疼。   逻辑分页比较简单。但是写的时候,后台调用本方法的时候,采用的是物理分页。但是layui 分页插件,看着比较适合逻辑分页。但是我有不能这样做。

    最后弄出来了,思路如下:

    1.加载layui库

    2.发送ajax请求,获取数据。在这里,应该获取的是数据的总数。但是我懒。用的还是带有数据的接口。分页接口数据返回的里面带有数据总数。这个需要看使用的是什么分页。这里使用的是mybaits-plus的分页插件

    3.监听jump: function(obj, first)方法。这个方法当你点击下一页或者分页的下标的时候会执行。进入的时候是第一页。所以会执行一次

    4.然后在监听的函数里面在请求一次ajax。然后获得数据,渲染到页面。

代码如下

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="UTF-8">
<title>Title</title>
<link rel="shortcut icon" href="./favicon.ico" type="image/x-icon" th:href="@{/favicon.ico}" />
<link rel="stylesheet" href="../../static/css/font.css">
<link rel="stylesheet" href="../../static/css/weadmin.css">
<script src="./lib/layui/layui.js" th:src="@{/lib/layui/layui.js}" charset="utf-8"></script>
</head>
<body>

<ul id="test">

</ul>
 <div id="blogList"></div>

</body>


<script>
layui.use([\'jquery\',\'laypage\', \'layer\',\'table\'],function(){
var $ =layui.jquery,
laypage=layui.laypage,
layer=layui.layer,
table=layui.table;
var pages=1;
var limits=2;
$.ajax({
url:\'/article/artList\',
type:\'get\',
data:{page:pages,limit:limits},
dataType:\'json\',
success:function (datas) {
laypage.render({
elem: \'blogList\'
,count: datas.count //数据总数,从服务端得到
,limit:2
,jump: function(obj, first){
//obj包含了当前分页的所有参数,比如:
console.log(obj.curr); //得到当前页,以便向服务端请求对应页的数据。
console.log(obj.limit); //得到每页显示的条数

$.ajax({
url:\'/article/artList\',
type:\'get\',
data:{page:obj.curr,limit:obj.limit},
dataType:\'json\',
success:function (data1) {
var arr=[];
arr.splice(0,arr.length);
layui.each(data1.data, function(index, item){

arr.push(\'<li>\'+ item.title +\'</li>\');
});
console.log(arr);
$(\'#test\').html(arr);

}

});


}
});
}
});



});


</script>
</html>

版权声明:本文为chaoba原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/chaoba/p/10458728.html