分页查询

我们在浏览很多网页的时候,由于数据太多,很多时候不能放在一个页面上,此时就需要分页功能。

效果如下:

环境

一库

一表

实现方法

函数Math.Ceiling,求大于该值的最小整数
控制器代码

        RbacDBEntities db = new RbacDBEntities();// GET: Rolepublic ActionResult Index(string name="",int pageIndex=1,int pageSize=5){//总记录数满足条件var count = db.Roles.Where(p => p.Name.Contains(name)).Count();var totalPage = Math.Ceiling(count * 1.00 / pageSize);//根据页码每页的条数名称查询var role = db.Roles.Where(p => p.Name.Contains(name)).OrderBy(p => p.ID)//排序.Skip((pageIndex - 1) * pageSize)//跳过.Take(pageSize)//取.ToList();//转化为集合ViewBag.pageIndex = pageIndex;ViewBag.totalPage = totalPage;ViewBag.name = name;ViewBag.pageSize = pageSize;return View(role);}

控制器向视图传值
return View(role);
ViewBag

@using WebApplication2.Models
@model List
循环Model
视图代码

@using WebApplication2.Models
@model List<Role>
<div style="display:flex;justify-content:space-between"><div class="btn-group"><button type="button" class="btn btn-default">新增</button><button type="button" class="btn btn-default">删除</button></div><div class="input-group"><label>名称</label><input type="text" id="txtCondName" value="@ViewBag.name" /><input type="button" class="btn btn-primary" value="搜索" id="btnSearch" onclick="page(1)" /></div>
</div><table class="table table-bordered"><thead><tr><th>编号</th><th>名称</th><th>备注</th></tr></thead><tbody>@foreach (var item in Model){<tr><td>@item.ID</td><td>@item.Name</td><td>@item.Remark</td></tr>}</tbody>
</table><nav aria-label="Page navigation" style="display:flex;justify-content:space-between"><ul class="pagination"><li>共<label>@ViewBag.totalPage</label>页,第<input type="text" value="@ViewBag.pageIndex" id="pageIndex"/>页,每页显示<select id="pageSize" onchange="page(1);">@{var pageIndexs = new List<int> { 5, 20, 50, 100 };}@foreach (var item in pageIndexs){if (ViewBag.pageSize == @item){<option value="@item" selected="selected">@item</option>}else{<option value="@item">@item</option>}}</select>条</li></ul><ul class="pagination"><li><a href="javascript:page(1);">首页</a></li>@if (ViewBag.pageIndex > 1){<li><a href="javascript:page(@ViewBag.pageIndex-1)">上页</a></li>}else{<li class="disabled"><a href="javascript:page(@ViewBag.pageIndex-1)">上页</a></li>}@if (ViewBag.pageIndex < ViewBag.totalPage){<li><a href="javascript:page(@ViewBag.pageIndex+1)">下页</a></li>}else{<li class="disabled"><a href="javascript:page(@ViewBag.pageIndex+1)">下页</a></li>}<li><a href="javascript:page(@ViewBag.totalPage)">末页</a></li><li><input type="button" value="go" onclick="go();" /></li></ul>
</nav>@section scripts{<script>function page(pageIndex) {var pageSize = $("#pageSize").val();var name = $("#txtCondName").val();window.location.href = "/role/index?pageIndex=" + pageIndex + "&pageSize=" + pageSize +"&name="+name}function go() {//获取pageindexvar pageindex = $("#pageIndex").val();page(pageindex);}</script>}

向控制器传值
window.location.href = “/role/index?pageIndex=” + pageIndex + “&pageSize=” + pageSize +"&name="+name
?+值

调用js方法
οnclick="go()“

function go() {
//获取pageindex
var pageindex = $("#pageIndex").val();
page(pageindex);
}

禁用属性
class=“disabled”

在mvc与EF框架环境下实现的分业查询笔记相关推荐

  1. asp.net MVC使用EF框架进行分页讲解

    asp.net MVC使用EF框架分页 数据库脚本 数据库以Roles为例 控制器代码 视图代码 数据库脚本 USE [master] GO /****** Object: Database [Rba ...

  2. HaaS学习笔记 | HaaS框架环境下基于MicroPython的LED跑马灯实现及比较

    [1]题目要求 [案例]:在HaaS框架下用原生MicroPython实现LED跑马灯.       蓝蜻蜓ESP32开发板的LED灯电路连接如下:          D3灯----GPIO14,高电 ...

  3. 城市公交线路查询系统mysql_基于Java环境下的城市公交查询系统设计与实现毕业论文+开题报告+答辩PPT+演示视频+设计源码+Mysql文件...

    摘  要 随着城市现代化和智能化程度的不断提高,城市交通的通畅受到了极大的挑战,便利的出行成为越来越多人的追求,但目前的公交查询系统平台质量普遍不高,路线选择单一,信息更新不及时,查询效率不高等问题存 ...

  4. java futuretask 单例_集群环境下java单例查询多了就异常

    { "query" : { "term" : { "url" : { "value" : "http://ww ...

  5. kali环境下的ARP欺骗学习笔记以及driftnet无法抓取图片的解决办法

    arpspoof工具使用方法如下: arpspoof -i 网卡 -t 目标ip 网关 在局域网中获取到了本机的网卡名以及被攻击主机的ip和网关后可进行ARP断网攻击,被攻击主机无法上网,攻击成功.k ...

  6. ASP.NET MVC+EF框架+EasyUI实现权限管理(附源码)

    前言目录 前言:时间很快,已经快到春节的时间了,这段时间由于生病,博客基本没更新,所以今天写一下我们做的一个项目吧,是对权限的基本操作的操作,代码也就不怎么说了,直接上传源码和图片展示,下面我们直接进 ...

  7. .net EF框架—增删改查—ajax删除

    1.数据库代码:(两个表) use master go if exists(select * from sys.databases where name='QU') drop database QU ...

  8. 四步法分析定位生产环境下MySQL上千条SQL中的问题所在

    第一步:通过以下两种方式之一来打开慢查询功能 (1)方式一:通过修改mysql的my.cnf文件 如果是5.0或5.1等版本需要增加以下选项: log-slow-queries="mysql ...

  9. c语言Linux用线程创建文件,Linux环境下C语言线程创建---简单代码

    在Linux环境下用C语言编写线程创建. //file name: pthreadtext.c #include #include //线程头文件 //pthread不是linux下的默认的库,也就是 ...

最新文章

  1. python画简单图形-python基础教程之turtle的简单绘图
  2. Android 操作SQLite基本用法
  3. VTK:PolyData之PointsProjectedHull
  4. leetcode —— 589. N叉树的前序遍历 (使用到遍历多叉树的方法)
  5. YaCy开源搜索引擎的热门技巧
  6. 用谷歌浏览器来模拟手机浏览器
  7. Linux下修改系统时间的简单方法
  8. 微信小程序API之setInterval
  9. ubuntu18.04搭建nfs
  10. 阮杰:从散户到身价过亿的私募掌门人
  11. Flutter FFI实践
  12. CANOPEN 协议 命令字
  13. 传奇世界开服教程:传奇世界开服需要准备什么?前期需要投入多少?
  14. Java多文件压缩下载解决方案
  15. 处理textarea的空格和换行
  16. Cookie是什么?从哪来?存在哪?往哪去?
  17. matlab求解解析解,Matlab中解析解与数值解的区别
  18. 成本计算的相关定义和公式
  19. 百度创始人李彦宏:互联网的下一章
  20. Python编程写的圣诞树|一共六款|快拿去送给心爱的人吧

热门文章

  1. python关闭文件的方法_Python xlrd.Book:如何关闭文件?
  2. latex中eps和pdf图片制作
  3. jsp内置对象是什么意思
  4. “大者恒大、强者恒强” ——新华三存储新品发布会有感
  5. K8S-安全(认证、授权、准入控制)
  6. 基于python的高校图书馆用户行为数据可视化平台设计与实现
  7. git push问题 objects/pack/tmp_pack_XXXXXX': Permission denied
  8. dubbo 用户指南
  9. 你羡慕靠副业赚钱的人吗
  10. python绘制表格界面_如何使用python语言中的tkinter模块设计表格框