.net core 学习笔记(1)-分页控件的使用

时间:2022-05-27 09:43:43

最近有个小项目,用.net core开发练练手,碰到的第一个问题就是分页控件的问题,自己写太费时间,上网查了下,发现有人已经封装好了的,就拿过来用了,分页控件github:https://github.com/sgjsakura/AspNetCore/blob/master/PagerDemo.md

使用方法也很简单

后台代码如下:期中list是数据返回的数据,pagesize是每页的数量,page是当前页数,totalcount-总条数,pagenum-总页数

   var model= new PagedList<List<user>,user>(list, list.ToList(), pagesize, page, totalcount, pagenum);

  前台:

<ul class="pagination">
<pager setting-link-attr-data-ajax="true" setting-link-attr-data-ajax-update="#list" generation-mode="ListOnly" setting-link-attr-data-ajax-searchForm="#SearchForm" />
<li>当前:@Model.PageIndex 页 总共:@Model.TotalPage 页</li>
</ul>
setting-link-attr后面跟的参数都是jquery.unobtrusive-ajax.js的操作参数,
data-ajax-是否是异步ajax分页,
data-ajax-update-需要更新的html标签id,
data-ajax-searchForm-分页时需要传递的查询表单(PS:该属性是发现了分页没有页面已有的查询条件传递过去,修改unobtrusive源码手动添加的,)
 $(document).on("click", "a[data-ajax=true]", function (evt) {
evt.preventDefault();
//  //下面为修改的源码部分,用来处理页面查询表单参数
var currentform = $(this.getAttribute("data-ajax-searchForm"))//
var cdata = [];
if (currentform != undefined) {
cdata = $(currentform).serializeArray();
}
//  //end asyncRequest(this, {
url: this.href,
type: "GET",
data: cdata
});
});