ASP.NET MVC 4使用PagedList.Mvc分页的实现代码
程序员文章站
2022-05-26 09:39:07
asp.net mvc中进行分页的方式有多种,在nuget上有提供使用pagedlist、pagedlist.mvc进行分页。
在安装引用pagedlist.mvc的...
asp.net mvc中进行分页的方式有多种,在nuget上有提供使用pagedlist、pagedlist.mvc进行分页。
在安装引用pagedlist.mvc的同时会安装引用pagedlist。
复制代码 代码如下:
@html.pagedlistpager((pagedlist.ipagedlist<sampleinfo>)viewbag.models, page => url.action("index", new { page, keyword = request["keyword"], datemin = request["datemin"], datemax = request["datemax"] }))
搜索触发事件:
<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>
后台方法:
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);
分页控件样式:
.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; }
分页样式效果:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
上一篇: asp.net 获取客户端浏览器访问的IP地址的实例代码
下一篇: Go语言排序与接口实例分析
推荐阅读
-
ASP.NET MVC4 HtmlHelper扩展类,实现分页功能
-
ASP.NET MVC使用ActionFilterAttribute实现权限限制的方法(附demo源码下载)
-
ASP.NET MVC 5使用X.PagedList.Mvc进行分页教程(PagedList.Mvc)
-
ASP.NET MVC+EF在服务端分页使用jqGrid以及jquery Datatables的注意事项
-
asp.net使用FCK编辑器中的分页符实现长文章分页功能
-
ASP.NET MVC4中使用Html.DropDownListFor的方法示例
-
ASP.NET MVC+EF在服务端分页使用jqGrid以及jquery Datatables的注意事项
-
asp.net使用FCK编辑器中的分页符实现长文章分页功能
-
MVC使用T4模板生成其他类的具体实现学习笔记2
-
asp.net mvc4中bootstrap datetimepicker控件的使用