action

 VodeEntities db = new NewVode.Models.VodeEntities();
int pagesize = ;
public ActionResult Index(string title, int page = )
{
var sql = "select * ,row_number() over ( order by id desc ) as rownum from vode"; if (!string.IsNullOrEmpty(title))
{
sql = string.Format("{0} where title like '%{1}%'", sql, title);
} var conn = db.Database.Connection;
var sql2 = string.Format("select top {1} * from ({0}) as a where a.rownum>({2}-1)*{1} and a.rownum<={1}*{2}", sql, pagesize, page);
var list = conn.Query<Vode>(sql2); ViewBag.curPage = page;
var total = conn.QueryFirst<int>("select count(id) from (" + sql + ") as a");
ViewBag.curPageTotal =Math.Ceiling((double)( total / pagesize));
ViewBag.stitle = title;
return View(list);
}

html

@model IEnumerable<NewVode.Models.Vode>
@{
ViewBag.Title = "Index";
} <script src="~/Scripts/jquery-1.8.2.js"></script>
<h2>Index</h2>
<form action="/home/index" method="post"> 标题: <input name="title" id="title" value="@ViewBag.stitle" />
<input type="button" value="查询 " id="btnSearch"/>
<input type="hidden" id="page" name="page" value="@ViewBag.curPage" />
@if (Model.Count() == )
{
<div>
无数据
</div>
}
else
{
<div> @foreach (var item in Model)
{
<div>
@item.title
</div>
}
<div id="pagebar"> <a href="javascript:;" onclick="goto(-1)" id="prev">上一页</a>
<a href="javascript:;" onclick="goto(1)" id="next">下一页</a>
<select>
@for (int i = ; i <= ViewBag.curPageTotal; i++)
{
<option value="@i">@i</option>
}
</select>
</div>
</div>
} </form> <script>
var curpage = parseInt( @ViewBag.curPage);
var total = parseInt(@ViewBag.curPageTotal); if (total <=) {
$("#pagebar").hide();
} else {
if (curpage == ) {
$("#prev").disabled = true;
}
if (curpage == total) {
$("#next").hide();
}
}
function goto(v) {
var n = curpage + v;
if (n <= ) {
alert("已经是第一页了");
}
else if (n > total) {
alert("已到最后一页了");
}
else {
$("#page").val(n);
$("form").submit();
}
}
$("form select").val(curpage).change(function () {
$("#page").val($(this).val());
$("form").submit(); });
$("#btnSearch").click(function () {
$("#page").val();
$("form").submit();
})
</script>

.net MVC4 来一个简单的分页代码的更多相关文章

  1. 只是一个用EF写的一个简单的分页方法而已

    只是一个用EF写的一个简单的分页方法而已 慢慢的写吧.比如,第一步,先把所有数据查询出来吧. //第一步. public IQueryable<UserInfo> LoadPagesFor ...

  2. 窥探原理:实现一个简单的前端代码打包器 Roid

    roid roid 是一个极其简单的打包软件,使用 node.js 开发而成,看完本文,你可以实现一个非常简单的,但是又有实际用途的前端代码打包工具. 如果不想看教程,直接看代码的(全部注释):点击地 ...

  3. asp.net core下一个简单的分页技术

    在做web应用的时候免不了要对数据进行分页,我最近在做asp.net core的开发的时候就遇到了这个需求,现在简单的记录一下: public class PaginatedList<T> ...

  4. Asp.net MVC4之 一个简单的小例子

    练习: 新建一个mvc项目 要求: 有3个视图  Login Index Details 目的:感受一下MVC与传统WebForm的差异性 WebForm的请求模型 MVC请求模型 传统WebForm ...

  5. 洗礼灵魂,修炼python(3)--从一个简单的print代码揭露编码问题,运行原理和语法习惯

    前期工作已经准备好后,可以打开IDE编辑器了,你可以选择python自带的IDLE,也可以选择第三方的,这里我使用pycharm--一个专门为python而生的IDE 按照惯例,第一个python代码 ...

  6. vuejs2.0实现一个简单的分页

    用js实现的分页结果如图所示: css .page-bar{ margin:40px; } ul,li{ margin: 0px; padding: 0px; } li{ list-style: no ...

  7. 利用Django做一个简单的分页页面

    views代码: from django.shortcuts import render from django.conf import settings from booktest.models i ...

  8. ios(iphone/ipad)一个简单的用代码判断当前设备的方法

    直接NSLog(@"current_device:%@",[UIDevice currentDevice].model); 即可看出它输出的是当前设备,所以根据这个字符串可简单的判 ...

  9. 用PHP写的一个简单的分页类 1.0版

    <?php /* 分页类 用于实现对多条数据分页显示 version:1.0 author:Knight E-Mail:S.Knight.Work@gmail.com Date:2013-10- ...

随机推荐

  1. JAVA基础 XML生成与解析和String包装类下 .replace方法的使用以及char和字符序列的使用场景

    ptLink0.setText(arbu.getPtLink().replace("&","&")); // 如果像 '&','& ...

  2. pathon之多线程详解

    一.线程理论 1.什么是线程 线程指的是一条流水线的工作过程 进程根本就不是一个执行单位,进程其实是一个资源单位--------将资源集合到一起: 一个进程内自带一个线程,线程才是CPU上的执行单位 ...

  3. 浅谈__dict__

    类的 __dict__ 先看一个例子: > class A(object): pass > ... > A.__dict__ dict_proxy({'__dict__': < ...

  4. 关于IntelliJ IDEA 创建Maven项目速度慢

    在maven的VM Options加上-DarchetypeCatalog=internal参数,如下:

  5. 接口测试中抓包工具Charles的使用

    在被测接口并没有明确的接口文档给出时,我们需要借助抓包工具来帮助测试,利用抓包工具我们几乎可以获得接口文档中能给你的一切.常见的抓包工具有Charles和Fiddler, Fiddler只能用在Win ...

  6. 使用vs2015编译、部署ssd-caffe(weiliu89版,CPU模式)

    前因项目所需,须训练一个快速模型以实现目标物体的实时检测.历经多次实践,发现MobileNetSSD网络符合要求,故在本人工作PC上部署weiliu89版本的ssd-caffe以期用之训练项目要求之模 ...

  7. Unity学习笔记(5):动态加载Prefab

    第一种方法,从Resources文件夹读取Prefab Assets/Resources文件夹是Unity中的一个特殊文件夹,在博主当前的认知里,放在这个文件夹里的Prefab可以被代码动态加载 直接 ...

  8. .NET处理Json的几种方式

    序列化里的xml,soap,binary在上一篇文章里面已经说过了,这篇主要说json. json是目前非常流行的一种序列化数据的方式,很多api都采用的是json,结构简洁,容易理解,适用性强,逐渐 ...

  9. 用EXCEL批量更改文件名,一个命令就能完成

    工作任务:学籍库里需要更新和完善学生信息,其中有一项工作就是要导入以身份证号为文件名的学生照片,而目前各个班级提交的学生照片是以学生姓名命名的.如何将学生姓名批量转换成身份证号码呢? 解决方案:用EX ...

  10. FICO(费埃哲)评分系统有什么优缺点?在国内的发展怎么样?

    权威回答: FICO的优点很明显: 在美国数据库较全面.一般存储有最近7-10年的个人信用记录,包括银行信用.商业信用甚至保险等. 客观性.计算机自动完成评估工作,克服人为操作的失误. 快捷性.出结果 ...