溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

layui實(shí)現(xiàn)數(shù)據(jù)分頁(yè)功能(ajax異步)

發(fā)布時(shí)間:2020-08-26 03:51:09 來(lái)源:腳本之家 閱讀:596 作者:小黑小黑白 欄目:web開(kāi)發(fā)

最近項(xiàng)目要使用layUI的分頁(yè),看了官方demo感覺(jué)還是不太清晰,摸索了一下,現(xiàn)在記錄一下。

一、引入layUI的相關(guān)資源

<link rel="stylesheet" href="${ctxPath}/vendor/layui-v2.4.5/layui/css/layui.css" >
<script src="${ctxPath}/vendor/layui-v2.4.5/layui/layui.js"></script>
<script src="${ctxPath}/vendor/jquery.min.js"></script>//引入jquery包

二、html頁(yè)面代碼

<div class="layui-main g-main">
 <div class="layui-row">
  <div class="layui-col-xs12">
   <blockquote class="layui-elem-quote">
    當(dāng)前系統(tǒng)排名:<span class="layui-badge-rim badge-number">第${scoreRecordUtil.rank}名</span>,
    總積分:<span class="layui-badge-rim badge-number">${scoreRecordUtil.totalScore}分</span>,
    和上一名相差:<span class="layui-badge-rim badge-number">${scoreRecordUtil.differenceTotal}分</span>,繼續(xù)加油!
   </blockquote>
   <table class="layui-table">
    <thead>
     <tr>
      <th>積分類型</th>
      <th>積分原因</th>
      <th>積分值</th>
      <th>創(chuàng)建時(shí)間</th>
     </tr>
    </thead>
    
    <tbody>
 //存放分頁(yè)加載數(shù)據(jù)
    </tbody>
    
   </table>
   <div class="page"></div>
  </div>
 </div>
</div>

三、定義showReocrd()函數(shù)異步加載數(shù)據(jù)

function showReocrd(pageNo,pageSize){
 $.get("${ctxPath}/score-record/showRecord",
  {
   pageNo:pageNo,
   pageSize:pageSize
  },
  function (date) {
   //加載后臺(tái)返回的List集合數(shù)據(jù)
   for (var i = 0; i < date.length; i++) {

    var td = $("<td></td>").text(date[i].typeName);
    var td2 = $("<td></td>").text(date[i].operate);
    var td3 = $("<td></td>").text(date[i].score);
    var td4 = $("<td></td>").text(date[i].createTime);
    var tr = $("<tr></tr>").append(td, td2, td3, td4);
    $('tbody').append(tr);
   }
  },
  "json"
 );
}

四、分頁(yè)js

主要注意下:

count: total 代表總的數(shù)據(jù)量,

limit 代表每頁(yè)行數(shù),

curr 代表起始頁(yè),但jump函數(shù)中的obj.curr取的是當(dāng)前頁(yè)數(shù)

jump 方法中obj參數(shù)可以取到上面的屬性和方法

first 為是否首次加載

//加載總頁(yè)數(shù)
var total = "${scoreRecordUtil.totalRecord}";
//先初始化加載首頁(yè),十條數(shù)據(jù)
showReocrd(1,10);

layui.use(['laypage','jquery'], function() {

 var laypage = layui.laypage,$ = layui.$;
 $(".page").each(function(i,the){
  laypage.render({
   elem: the //注意,這里的 test1 是 ID,不用加 # 號(hào)
   ,count: total //數(shù)據(jù)總數(shù),從服務(wù)端得到
   , limit: 10      //每頁(yè)顯示條數(shù)
   , limits: [10, 20, 30]
   , curr: 1      //起始頁(yè)
   , groups: 5      //連續(xù)頁(yè)碼個(gè)數(shù)
   , prev: '上一頁(yè)'     //上一頁(yè)文本
   , netx: '下一頁(yè)'     //下一頁(yè)文本
   , first: 1      //首頁(yè)文本
   , last: 100      //尾頁(yè)文本
   , layout: ['prev', 'page', 'next','limit','refresh','skip']
   //跳轉(zhuǎn)頁(yè)碼時(shí)調(diào)用
   , jump: function (obj, first) { //obj為當(dāng)前頁(yè)的屬性和方法,第一次加載first為true
    //非首次加載 do something
    if (!first) {
     //清空以前加載的數(shù)據(jù)
     $('tbody').empty();
     //調(diào)用加載函數(shù)加載數(shù)據(jù)
     showReocrd(obj.curr,obj.limit);
    }
   }
  });
 })
})

推薦:使用layui的table組件自帶分頁(yè)功能(異步,含條件查詢)點(diǎn)這里

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持億速云。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI