Cet article présente principalement le code d'implémentation d'ASP.NET MVC 4 utilisant la pagination PagedList.Mvc, qui a une certaine valeur de référence. Les amis intéressés peuvent se référer à
Pagination dans ASP.NET MVC Il existe de nombreuses façons de le faire. paginate. NuGet fournit l'utilisation de PagedList et PagedList.Mvc pour la pagination.
Lorsque la référence PagedList.Mvc est installée, la référence PagedList sera installée en même temps.
Copier le code Le code est le suivant :
@Html.PagedListPager((PagedList.IPagedList<SampleInfo>)ViewBag.Models, page => Url.Action("Index", new { page, keyword = Request["keyword"], datemin = Request["datemin"], datemax = Request["datemax"] }))
Événement déclencheur de recherche :
<input type="text" id="datemin" class="input-text Wdate" style="width:60px;" value="@Request["datemin"]"> <input type="text" id="datemax" class="input-text Wdate" style="width:60px;" value="@Request["datemax"]"> <input type="text" class="input-text" style="width:250px" placeholder="输入关键词" id="keyword" name="" value="@Request["keyword"]"> <button type="submit" class="btn btn-success" id="" name="" onclick="search()"><i class="icon-search"></i> 搜索</button>
<script> function search() { var url = "?type=1"; if ($("#keyword").val() != "") { url += "&keyword=" + $("#keyword").val(); } if ($("#datemin").val() != "") { url += "&datemin=" + $("#datemin").val(); } if ($("#datemax").val() != "") { url += "&datemax=" + $("#datemax").val(); } window.location.href = "/Admin/SampleInfo/Index"+url; } </script>
Méthodes d'arrière-plan :
IQueryable<SampleInfo> models = db.SampleInfoBLL.GetAllEntities().Where(d => d.IsDel == false); if (!String.IsNullOrEmpty(Request["keyword"])) { string keyword = Request["keyword"]; models = models.Where(d => d.Site_Chinese.Contains(keyword)); } if (!String.IsNullOrEmpty(Request["datemin"])) { int datemin = Convert.ToInt32(Request["datemin"]); models = models.Where(d => Convert.ToDouble(d.Lon_Degree) >= datemin); } if (!String.IsNullOrEmpty(Request["datemax"])) { int datemax = Convert.ToInt32(Request["datemax"]); models = models.Where(d => Convert.ToDouble(d.Lat_Degree) <= datemax); } int page = 1; if (Request["page"] != null) { page = Convert.ToInt32(Request["page"]); } ViewBag.ModelsCount = models.Count(); ViewBag.Models = models.OrderBy(d => d.SampleInfoID).ToPagedList(page, 10);
Style de contrôle de pagination :
.pagination { display: inline-block; padding-left: 0; margin: 20px 0; border-radius: 4px; } .pagination > li { display: inline; } .pagination > li > a, .pagination > li > span { position: relative; float: left; padding: 6px 12px; margin-left: -1px; line-height: 1.428571429; text-decoration: none; background-color: #ffffff; border: 1px solid #dddddd; } .pagination > li:first-child > a, .pagination > li:first-child > span { margin-left: 0; border-bottom-left-radius: 4px; border-top-left-radius: 4px; } .pagination > li:last-child > a, .pagination > li:last-child > span { border-top-right-radius: 4px; border-bottom-right-radius: 4px; } .pagination > li > a:hover, .pagination > li > span:hover, .pagination > li > a:focus, .pagination > li > span:focus { background-color: #eeeeee; } .pagination > .active > a, .pagination > .active > span, .pagination > .active > a:hover, .pagination > .active > span:hover, .pagination > .active > a:focus, .pagination > .active > span:focus { z-index: 2; color: #ffffff; cursor: default; background-color: #428bca; border-color: #428bca; } .pagination > .disabled > span, .pagination > .disabled > a, .pagination > .disabled > a:hover, .pagination > .disabled > a:focus { color: #999999; cursor: not-allowed; background-color: #ffffff; border-color: #dddddd; } .pagination-lg > li > a, .pagination-lg > li > span { padding: 10px 16px; font-size: 18px; } .pagination-lg > li:first-child > a, .pagination-lg > li:first-child > span { border-bottom-left-radius: 6px; border-top-left-radius: 6px; } .pagination-lg > li:last-child > a, .pagination-lg > li:last-child > span { border-top-right-radius: 6px; border-bottom-right-radius: 6px; } .pagination-sm > li > a, .pagination-sm > li > span { padding: 5px 10px; font-size: 12px; } .pagination-sm > li:first-child > a, .pagination-sm > li:first-child > span { border-bottom-left-radius: 3px; border-top-left-radius: 3px; } .pagination-sm > li:last-child > a, .pagination-sm > li:last-child > span { border-top-right-radius: 3px; border-bottom-right-radius: 3px; } .pager { padding-left: 0; margin: 20px 0; text-align: center; list-style: none; } .pager:before, .pager:after { display: table; content: " "; } .pager:after { clear: both; } .pager:before, .pager:after { display: table; content: " "; } .pager:after { clear: both; } .pager li { display: inline; } .pager li > a, .pager li > span { display: inline-block; padding: 5px 14px; background-color: #ffffff; border: 1px solid #dddddd; border-radius: 15px; } .pager li > a:hover, .pager li > a:focus { text-decoration: none; background-color: #eeeeee; } .pager .next > a, .pager .next > span { float: right; } .pager .previous > a, .pager .previous > span { float: left; } .pager .disabled > a, .pager .disabled > a:hover, .pager .disabled > a:focus, .pager .disabled > span { color: #999999; cursor: not-allowed; background-color: #ffffff; } .pagination-container { text-align: center; }
Effet de style de pagination :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!