In diesem Artikel wird hauptsächlich der Implementierungscode von ASP.NET MVC 4 mit PagedList.Mvc-Paging vorgestellt, der einen gewissen Referenzwert hat.
Paging in ASP.NET MVC Es gibt viele Möglichkeiten paginate. NuGet bietet die Verwendung von PagedList und PagedList.Mvc für Paging.
Bei der Installation der Referenz PagedList.Mvc wird die Referenz PagedList installiert.
Code kopieren Der Code lautet wie folgt:
@Html.PagedListPager((PagedList.IPagedList<SampleInfo>)ViewBag.Models, page => Url.Action("Index", new { page, keyword = Request["keyword"], datemin = Request["datemin"], datemax = Request["datemax"] }))
Suchtriggerereignis:
<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>
Hintergrundmethoden:
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);
Page-Steuerungsstil:
.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; }
Paginierungsstileffekt:
Das obige ist der detaillierte Inhalt vonBeispielcode, wie ASP.NET MVC4 PagedList.Mvc verwendet, um die Paging-Funktion zu implementieren. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!