MvcPager分页控件使用注意事项

(编辑:jimmy 日期: 2024/10/15 浏览:2)

初学MVC,做了个单页面应用,需要显示多个分页,并无刷新更新。

找到了MvcPager控件,非常好用,在使用ajax过程中遇到很多问题。慢慢调试和杨老师(MvcPaegr作者)请教,总于都解决了。

首先NuGet包添加上。搜索MvcPager可以找到。

控制器端必须引用

using Webdiyer.WebControls.Mvc;

后端就不多记录了,看下官方Demo差不多都理解了,主要记录下前端。

 <div>
  @Ajax.Pager(Model, new PagerOptions
 {
  ShowFirstLast = false,//显示第一页按钮
  ShowPrevNext = false,//显示最后一页按钮
  NumericPagerItemCount = 5,//最多显示页码数
  PageIndexParameterName = "page",//传递给后端的分页参数,如果同页有多个分页,这个参数必须不同
  Id = "callajax",//分页控件的ID,给内容修改后需要刷新页面使用。
  ContainerTagName = "ul",
  CssClass = "pagination",
  CurrentPagerItemTemplate = "<li class=\"active\"><a href=\"#\">{0}</a></li>",
  DisabledPagerItemTemplate = "<li class=\"disabled\"><a>{0}</a></li>",
  PagerItemTemplate = "<li>{0}</li>"
 },
 new MvcAjaxOptions { UpdateTargetId = "calllogpage",EnableHistorySupport = false })
 </div>

然后在需要执行后刷新分页控件的地方加入,如果添加或者删除后执行

Webdiyer.MvcPagers.getById("callajax").ajaxReload();//这里面的ID是分页控件指定的ID 

重要。使用上面的方法需要在MvcPager.js的jQuery插件中增加一个方法

ajaxReload:function(){
  var context = this;
  context.allowReload = true;
  context.allowCache=false;
  var index = context.__getPageIndex(context.pageIndexName);
  context.__ajax(index===0?1:index, { type: this.httpMethod, data: [] });
 },

重要,将MvcPager.js修改后就不能使用MvcPager的JS脚本注册方法了。

直接引用MvcPager.js就行了。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

一句话新闻

一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?