.net MVC4 来一个简单的分页代码
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 来一个简单的分页代码的更多相关文章
- 只是一个用EF写的一个简单的分页方法而已
只是一个用EF写的一个简单的分页方法而已 慢慢的写吧.比如,第一步,先把所有数据查询出来吧. //第一步. public IQueryable<UserInfo> LoadPagesFor ...
- 窥探原理:实现一个简单的前端代码打包器 Roid
roid roid 是一个极其简单的打包软件,使用 node.js 开发而成,看完本文,你可以实现一个非常简单的,但是又有实际用途的前端代码打包工具. 如果不想看教程,直接看代码的(全部注释):点击地 ...
- asp.net core下一个简单的分页技术
在做web应用的时候免不了要对数据进行分页,我最近在做asp.net core的开发的时候就遇到了这个需求,现在简单的记录一下: public class PaginatedList<T> ...
- Asp.net MVC4之 一个简单的小例子
练习: 新建一个mvc项目 要求: 有3个视图 Login Index Details 目的:感受一下MVC与传统WebForm的差异性 WebForm的请求模型 MVC请求模型 传统WebForm ...
- 洗礼灵魂,修炼python(3)--从一个简单的print代码揭露编码问题,运行原理和语法习惯
前期工作已经准备好后,可以打开IDE编辑器了,你可以选择python自带的IDLE,也可以选择第三方的,这里我使用pycharm--一个专门为python而生的IDE 按照惯例,第一个python代码 ...
- vuejs2.0实现一个简单的分页
用js实现的分页结果如图所示: css .page-bar{ margin:40px; } ul,li{ margin: 0px; padding: 0px; } li{ list-style: no ...
- 利用Django做一个简单的分页页面
views代码: from django.shortcuts import render from django.conf import settings from booktest.models i ...
- ios(iphone/ipad)一个简单的用代码判断当前设备的方法
直接NSLog(@"current_device:%@",[UIDevice currentDevice].model); 即可看出它输出的是当前设备,所以根据这个字符串可简单的判 ...
- 用PHP写的一个简单的分页类 1.0版
<?php /* 分页类 用于实现对多条数据分页显示 version:1.0 author:Knight E-Mail:S.Knight.Work@gmail.com Date:2013-10- ...
随机推荐
- CSS快速入门-浮动(float)
一.float概述 浮动(float)是CSS布局常用的一个属性.它可以左右移动,直至它的外边缘碰到包含框或另一个浮动框的外边框. float被设计出来的初衷是用于文字环绕效果.如下代码: <! ...
- Using the Console[译]
由于最近的项目需要大量用到浏览器端的js编码和调试,所以仔细阅读了一下Chrome对于开发者工具中js部分的说明.虽然原来也用这个工具,但读后仍然觉得受益匪浅.于是抽空翻译一下,与大家分享. 本人英文 ...
- SpringBoot日记——SpringMvc自动配置与扩展篇
为了让SpringBoot保持对SpringMVC的全面支持和扩展,而且还要维持SpringBoot不写xml配置的优势,我们需要添加一些简单的配置类即可实现: 通常我们使用的最多的注解是: @Bea ...
- 大学生Linux常用命令(一)
大学生Linux常用命令(一) 1.1 命令格式 命令格式一般为---命令名 [选项] [参数1] [参数2]- 例如:cp -I file1 cp为命令名,-l为选项,file1为参数. 其中,命令 ...
- 3、ObjectARX开发创建直线、圆、圆弧和修改对象属性
一.本节课程 Arx二次开发创建直线.圆.圆弧和修改对象属性 二.本节要讲解的知识点 1.如何应用C++ ARX二次开发创建直线. 2.如何应用C++ ARX二次开发创建圆. 3.如何应用C++ AR ...
- node安装和npm全局配置
本文章环境 windows10 64位家庭版 Node10.15.3LTS 安装包下载 Node官网 安装node 点击安装文件, 一键安装, 注意安装位置和添加到环境变量(xx to PATH)选项 ...
- 32bit 天堂2 windows 2003 server架设教程
安装环境::[注意:本教程newauth要用不加密的版本] windows 2003 enterprise server 100用户license Microsoft sql server 2000 ...
- (1) Python 数据类型功能
1.int 将字符串转化为数字 a="123" print(type(a),a) b=int(a) print(type(b),b) num="0011" ...
- linux运维升级路线
运维工程师是从一个呆逼进化为苦逼再成长为牛逼的过程,前提在于你要能忍能干能拼,还要具有敏锐的嗅觉感知前方潮流变化.如:今年大数据,人工智能比较火……(相对表示就是 Python 比较火) 之前写过运维 ...
- Java时间格式的使用,bug难时真是坑
很简单的问题,尤其是新手开发,要多自己动手写代码,都说程序猿大都是程序的搬用工,其实不然,好的写手,和差的写手,区别就在是不是会花时间读读代码,并且自己动手实践一下,其实一个程序范这样的错误,绝对是低 ...