注意:一个页面上有多个MvcPager时,必须确保每个MvcPager的PagerOptions.PageIndexParameterName属性值不同,否则一个MvcPager的分页事件,会引发所有PagerOptions.PageIndexParameterName属性值相同的MvcPager同时分页。
![Fork me on GitHub](/images/redforkme.png)
- Url路由分页
- Ajax分页
- Ajax搜索分页
- 外观样式
- 分页数据相关
- Javascrip API
- AjaxPager 类
- AjaxHelper.Pager 扩展方法
- HtmlPager 类
- HtmlHelper.Pager 扩展方法
- IPagedList 接口
- IPagedList<T> 接口
- MvcAjaxOptions 类
- MvcAjaxOptionsBuilder 类
- PagedList<T> 类
- PageLinqExtensions 类
-
PagerOptions 类
- ActionName属性
- AlwaysShowFirstLastPageNumber属性
- AutoHide属性
- ContainerTagName属性
- ControllerName属性
- CssClass属性
- CurrentPageNumberFormatString属性
- CurrentPagerItemTemplate属性
- DisabledPagerItemTemplate属性
- FirstPageRouteName属性
- FirstPageText属性
- GoToButtonId属性
- HidePagerItems属性
- HorizontalAlign属性
- HtmlAttributes属性
- Id属性
- InvalidPageIndexErrorMessage属性
- LastPageText属性
- MaximumPageIndexItems属性
- MaximumPageNumber属性
- MorePagerItemTemplate属性
- MorePageText属性
- NavigationPagerItemsPosition属性
- NavigationPagerItemTemplate属性
- NextPageText属性
- NumericPagerItemCount属性
- NumericPagerItemTemplate属性
- OnPageIndexError属性
- PageIndexBoxId属性
- PageIndexOutOfRangeErrorMessage属性
- PageIndexParameterName属性
- PageNumberFormatString属性
- PagerItemTemplate属性
- PrevPageText属性
- RouteName属性
- RouteValues属性
- ShowDisabledPagerItems属性
- ShowFirstLast属性
- ShowMorePagerItems属性
- ShowNumericPagerItems属性
- ShowPrevNext属性
- PagerItemsPosition 枚举
- PagerOptionsBuilder 类
- ScriptResourceExtensions 类
- Javascript API
- AjaxPager.cs
- AjaxPagerTest.cs
- DataLoaderBuilder.cs
- DisplayNameExtensions.cs
- HtmlPager.cs
- HtmlPagerTest.cs
- IPagedList.cs
- MvcAjaxOptions.cs
- MvcAjaxOptionsBuilder.cs
- MvcPager.js
- PagedList.cs
- PagedListTest.cs
- PageLinqExtensions.cs
- PagerBuilder.cs
- PagerExtensions.cs
- PagerItem.cs
- PagerItemsPosition.cs
- PagerOptions.cs
- PagerOptionsBuilder.cs
- ScriptResourceExtensions.cs
- TestHelper.cs
MvcPager 分页示例 — 多个MvcPager
本示例演示在同一个页面上使用多个HtmlPager为不同的数据分页。
序号 | 文章标题 | 作者 | 文章来源 |
---|---|---|---|
16 | 延安市吴起县境内古城投资三亿欲变陕北名镇 | 杨涛 | 吴起政府网 |
17 | 延安市居住证首发仪式在吴起举行 | Webdiyer | 吴起热线 |
18 | 黄土高原上的绿色丰碑——吴起县生态环境建设巡礼 | 杨涛 | 吴起热线 |
19 | 吴起的追梦之旅——吴起县争创“全国百强县”纪实 | 杨涛 | 吴起热线 |
20 | 延安铁边城入选第七批全国重点文保单位 | 杨涛 | 吴起热线 |
序号 | 文章标题 | 作者 | 文章来源 |
---|---|---|---|
1 | 吴起热线微信公众号上线 | Webdiyer | 吴起热线 |
2 | 再到吴起观“绿海” | Webdiyer | 吴起热线 |
3 | 吴起:从贫困县到全国百强 | Webdiyer | 吴起热线 |
4 | 吴起县铁边城入围全省31个文化旅游名镇 | Webdiyer | 吴起热线 |
5 | 吴起特色养殖成农民致富首选 | Webdiyer | 吴起政府网 |
View:
@model CompositeArticles @{Html.RenderPartial("_ArticleTable", Model.ArticleList1);} @Html.Pager(Model.ArticleList1).Options(o => o.SetPagerItemTemplate("{0} ")) <hr /> @{Html.RenderPartial("_ArticleTable",Model.ArticleList2);} @Html.Pager(Model.ArticleList2, new PagerOptions { PageIndexParameterName = "id", RouteName = "MvcPager_Default" , PagerItemTemplate = "{0} "})
_ArticleTable.cshtml:
@model PagedList<Article> <table class="table table-bordered table-striped"> <tr> <th class="nowrap">序号</th> <th> @Html.DisplayNameFor(model => model.Title) </th> <th> @Html.DisplayNameFor(model => model.PubDate) </th> <th> @Html.DisplayNameFor(model => model.Author) </th> <th> @Html.DisplayNameFor(model => model.Source) </th> </tr> @{ int i = 0;} @foreach (var item in Model) { <tr> <td>@(Model.StartItemIndex + i++)</td> <td> @Html.DisplayFor(modelItem => item.Title) </td> <td> @Html.DisplayFor(modelItem => item.PubDate) </td> <td> @Html.DisplayFor(modelItem => item.Author) </td> <td> @Html.DisplayFor(modelItem => item.Source) </td> </tr> } </table>
Model:
public class Article { [Display(Name="文章编号")] public int ID { get; set; } [Display(Name="文章标题")] [MaxLength(200)] public string Title { get; set; } [Display(Name = "文章内容")] public string Content { get; set; } [Display(Name = "发布日期")] public DateTime PubDate { get; set; } [Display(Name = "作者")] [MaxLength(20)] public string Author { get; set; } [Display(Name = "文章来源")] [MaxLength(20)] public string Source { get; set; } }
ViewModel:
public class CompositeArticles { public PagedList<article> ArticleList1 { get; set; } public PagedList<article> ArticleList2 { get; set; } public PagedList<article> ArticleList3 { get; set; } }
Controller:
public ActionResult MultipleMvcPagers(int id = 1,int pageIndex=1) { using (var db = new DataContext()) { var pageSize = 5; var model=new CompositeArticles(); model.ArticleList1 = db.Articles.OrderByDescending(a => a.PubDate).ToPagedList(pageIndex, pageSize); model.ArticleList2 = db.Articles.OrderByDescending(a => a.PubDate).ToPagedList(id, pageSize); return View(model); } }