最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

基于LayUI分页和LayUI laypage分页的使用示例

来源:懂视网 责编:小采 时间:2020-11-27 22:33:45
文档

基于LayUI分页和LayUI laypage分页的使用示例

基于LayUI分页和LayUI laypage分页的使用示例:本文介绍了LayUI分页,LayUI动态分页,LayUI laypage分页,LayUI laypage刷新当前页,分享给大家,具体如下: 效果图: 一、引用js依赖 主要是jquery-1.11.3.min.js 和 layui.all.js , json2.js用来做json对象转换的
推荐度:
导读基于LayUI分页和LayUI laypage分页的使用示例:本文介绍了LayUI分页,LayUI动态分页,LayUI laypage分页,LayUI laypage刷新当前页,分享给大家,具体如下: 效果图: 一、引用js依赖 主要是jquery-1.11.3.min.js 和 layui.all.js , json2.js用来做json对象转换的

本文介绍了LayUI分页,LayUI动态分页,LayUI laypage分页,LayUI laypage刷新当前页,分享给大家,具体如下:

效果图:

 一、引用js依赖

主要是jquery-1.11.3.min.js 和 layui.all.js , json2.js用来做json对象转换的

<script type="text/javascript" src="${pageContext.request.contextPath}/js/jquery-1.11.3.min.js"></script> 
<script type="text/javascript" src="${pageContext.request.contextPath}/plugin/layui/lay/dest/layui.all.js"></script> 
<script type="text/javascript" src="${pageContext.request.contextPath}/js/json2.js"></script> 

二、js分页方法封装(分页使用模板laytpl)

1、模板渲染

/** 
 * 分页模板的渲染方法 
 * @param templateId 分页需要渲染的模板的id 
 * @param resultContentId 模板渲染后显示在页面的内容的容器id 
 * @param data 服务器返回的json对象 
 */ 
function renderTemplate(templateId, resultContentId, data){ 
 layuiuse(['form','laytpl'], function(){ 
 var laytpl = layui.laytpl; 
 laytpl($("#"+templateId).html()).render(data, function(html){ 
 $("#"+resultContentId).html(html); 
 }); 
 }); 
 layui.form().render();// 渲染 
}; 

2、layui.laypage 分页封装

/** 
 * layuilaypage 分页封装 
 * @param laypageDivId 分页控件Div层的id 
 * @param pageParams 分页的参数 
 * @param templateId 分页需要渲染的模板的id 
 * @param resultContentId 模板渲染后显示在页面的内容的容器id 
 * @param url 向服务器请求分页的url链接地址 
 */ 
function renderPageData(laypageDivId, pageParams, templateId, resultContentId, url){ 
 if(isNull(pageParams)){ 
 pageParams = { 
 pageIndex : 1, 
 pageSize : 10 
 } 
 } 
 $ajax({ 
 url : url,//basePath + '/sysMenu/pageSysMenu', 
 method : 'post', 
 data : pageParams,//JSON.stringify(datasub) 
 async : true, 
 complete : function (XHR, TS){}, 
 error : function(XMLHttpRequest, textStatus, errorThrown) { 
 if("error"==textStatus){ 
 error("服务器未响应,请稍候再试"); 
 }else{ 
 error("操作失败,textStatus="+textStatus); 
 } 
 }, 
 success : function(data) { 
 var jsonObj; 
 if('object' == typeof data){ 
 jsonObj = data; 
 }else{ 
 jsonObj = JSON.parse(data); 
 } 
 renderTemplate(templateId, resultContentId, jsonObj); 
 
 //重新初始化分页插件 
 layui.use(['form','laypage'], function(){ 
 laypage = layui.laypage; 
 laypage({ 
 cont : laypageDivId, 
 curr : jsonObj.pager.pageIndex, 
 pages : jsonObj.pager.totalPage, 
 skip : true, 
 jump: function(obj, first){//obj是一个object类型。包括了分页的所有配置信息。first一个Boolean类,检测页面是否初始加载。非常有用,可避免无限刷新。 
 pageParams.pageIndex = obj.curr; 
 pageParams.pageSize = jsonObj.pager.pageSize; 
 if(!first){ 
 renderPageData(laypageDivId, pageParams, templateId, resultContentId, url); 
 } 
 } 
 }); 
 }); 
 } 
 }); 
}; 

 3、刷新当前分页的方法,可省略

/** 
 * 分页插件刷新当前页的数据,必须有跳转的确定按钮,因为根据按钮点击事件刷新 
 */ 
function reloadCurrentPage(){ 
 $(".layui-laypage-btn").click(); 
}; 

三、页面代码

1、分页表格及分页控件

<!-- 分页表格 --> 
<div class="layui-form"> 
 <table class="layui-table"> 
 <thead> 
 <tr> 
 <th class="w20"><input type="checkbox" name="checkBoxAll" lay-skin="primary" lay-filter="allChoose"></th> 
 <th class="w200">许可名称</th> 
 <th class="w200">许可编码</th> 
 <th class="w200">菜单名称</th> 
 <th>许可链接</th> 
 </tr> 
 </thead> 
 <tbody id="page_template_body_id"> 
 </tbody> 
 </table> 
</div> 
<!-- 分页控件div --> 
<div id="imovie-page-div"></div> 

2、分页模板

<script id="page_template_id" type="text/html"> 
{{# layui.each(d.list, function(index, item){ }} 
<tr> 
 <td><input type="checkbox" name="permissionId" lay-skin="primary" value="{{item.permissionId}}"></td> 
 <td>{{item.permissionName || ''}}</td> 
 <td>{{item.permissionCode || ''}}</td> 
 <td>{{item.menuName || ''}}</td> 
 <td>{{item.permissionUrl || ''}}</td> 
</tr> 
{{# }); }} 
</script> 

3、分页执行代码:

分页参数:

function getPageParams(){ 
 var pageParams = { 
 pageIndex : 1, 
 pageSize : 2 
 }; 
 pageParams.permissionName = $("input[name='permissionName']").val(); 
 pageParams.permissionCode = $("input[name='permissionCode']").val(); 
 pageParams.menuName = $("input[name='menuName']").val(); 
 return pageParams; 
}; 

分页执行方法:

function initPage(){ 
 renderPageData("imovie-page-div", getPageParams(), "page_template_id", 
 "page_template_body_id", basePath + '/sysPermission/pageSysPermission'); 
}; 

页面加载初始化分页:

$(function(){ 
 initPage(); 
}); 

如果包括上面效果图的查询,如下:

Html页面代码

<div> 
 <form class="layui-form layui-form-pane"> 
 <div class="layui-form-item"> 
 <div class="layui-inline"> 
 <label class="layui-form-label">许可名称</label> 
 <div class="layui-input-inline"> 
 <input type="text" name="permissionName" 
 autocomplete="off" class="layui-input" placeholder="请输入许可名称" > 
 </div> 
 </div> 
 <div class="layui-inline"> 
 <label class="layui-form-label">许可编码</label> 
 <div class="layui-input-inline"> 
 <input type="text" name="permissionCode" 
 autocomplete="off" placeholder="请输入许可编码" class="layui-input"> 
 </div> 
 </div> 
 <div class="layui-inline"> 
 <label class="layui-form-label">菜单名称</label> 
 <div class="layui-input-inline layui-input-inline-0"> 
 <input type="text" name="menuName" 
 autocomplete="off" placeholder="请选择菜单名称" class="layui-input"> 
 
 </div> 
 </div> 
 <div class="layui-inline"> 
 <button id="btnSubmit" class="layui-btn" lay-submit="" lay-filter="formFilter">查询</button> 
 </div> 
 </div> 
 </form> 
 </div> 

查询语句:

$(function(){ 
 initPage(); 
 
 layui.use(['form'], function(){ 
 var form = layui.form(); 
 //监听提交 
 formon('submit(formFilter)', function(data){ 
 initPage(); 
 return false; 
 }); 
 
 
 }); 
}); 

 四、懂 jquery 插件封装的大神可以将其封装成独立的分页插件,这样更加容易使用。我表示不太懂,^_^

文档

基于LayUI分页和LayUI laypage分页的使用示例

基于LayUI分页和LayUI laypage分页的使用示例:本文介绍了LayUI分页,LayUI动态分页,LayUI laypage分页,LayUI laypage刷新当前页,分享给大家,具体如下: 效果图: 一、引用js依赖 主要是jquery-1.11.3.min.js 和 layui.all.js , json2.js用来做json对象转换的
推荐度:
标签: 的使用 例子 分页
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top