Asp.net MVC 示例
public ActionResult Browse(string id)
{
using (musicstoreEntities db = new musicstoreEntities())
{
ViewBag.GenreId = id;
int count = db.Albums.Count(a => a.GenreId.ToString() == id);
int pageCount = 0;
if (count%10 == 0)
{
pageCount = count/10;
}
else
{
pageCount = count/10 + 1;
}
ViewBag.AlbumCount = pageCount;
return View();
}
}
public ActionResult PageList(string id, int pageNum, int pageSize)
{
List<string> albumTitleList = null;
using (musicstoreEntities db = new musicstoreEntities())
{
albumTitleList =
db.Albums.Where(album => album.GenreId.ToString() == id).OrderBy(album => album.Title)
.Skip((pageNum - 1) * pageSize)
.Take(pageSize)
.ToList().Select(album => album.Title).ToList();
}
return Json(albumTitleList, JsonRequestBehavior.AllowGet);
}
<script>
$(function() {
//$.ajaxSetup({ cache: false });
var pageCount = Number($("#pageCount").val());
loadPageList(1, 10, pageCount);
});
function loadPageList(pageNum, pageSize, pageCount) {
var genreid = $("#genreid").val();
$.get("/Store/PageList", { id: genreid, pageNum: pageNum, pageSize: pageSize }, function(data) {
$("#ulAlbumList").empty();
$(".pagination").empty();
$.each(data, function(index, item) {
$("#ulAlbumList").append("<li>" + item + "</li>");
});
$(".pagination").append('<li><span aria-label="Previous"><span aria-hidden="true">«</span></span></li>');
for (var i = 1; i <= pageCount; i++) {
$(".pagination").append("<li><span>" + i + "</span></li>");
if (pageNum === i) {
$(".pagination li:eq(" + i + ")").addClass("active");
}
}
$(".pagination").append('<li><span aria-label="Next"><span aria-hidden="true">»</span></span></li>');
if (Number(pageNum) === Number(pageCount)) {
$(".pagination li:last").addClass("disabled");
}
if (Number(pageNum) === 1) {
$(".pagination li:first").addClass("disabled");
}
getNextPageList(pageNum, pageSize, pageCount);
getPrePageList(pageNum, pageSize, pageCount);
});
}
function getNextPageList(pageNum, pageSize, pageCount) {
$(".pagination li:last").click(function () {
loadPageList(Number(pageNum) + Number(1), pageSize, pageCount);
});
}
function getPrePageList(pageNum, pageSize, pageCount) {
$(".pagination li:first").click(function() {
loadPageList(Number(pageNum) - Number(1), pageSize, pageCount);
});
}
</script>
Asp.net MVC 示例的更多相关文章
- [Asp.net mvc] 在Asp.net mvc 中使用MiniProfiler
MiniProfiler是Stack Overflow团队设计的一款性能分析的小程序.可以对一个页面本身,及该页面通过直接引用.Ajax.Iframe形式访问的其它页面进行监控,监控内容包括数据库内容 ...
- asp.net mvc各种传值方式大全
MVC 各种传值方式 ViewData传值. HomeController.cs Co de: public ActionResult Index(){ ViewData["Ti ...
- Pro ASP.NET MVC –第三章 MVC模式
在第七章,我们将创建一个更复杂的ASP.NET MVC示例,但在那之前,我们会深入ASP.NET MVC框架的细节:我们希望你能熟悉MVC设计模式,并且考虑为什么这样设计.在本章,我们将讨论下列内容 ...
- ASP.NET MVC Filters 4种默认过滤器的使用【附示例】
过滤器(Filters)的出现使得我们可以在ASP.NET MVC程序里更好的控制浏览器请求过来的URL,不是每个请求都会响应内容,只响应特定内容给那些有特定权限的用户,过滤器理论上有以下功能: 判断 ...
- 【第四篇】ASP.NET MVC快速入门之完整示例(MVC5+EF6)
目录 [第一篇]ASP.NET MVC快速入门之数据库操作(MVC5+EF6) [第二篇]ASP.NET MVC快速入门之数据注解(MVC5+EF6) [第三篇]ASP.NET MVC快速入门之安全策 ...
- 《Entity Framework 6 Recipes》中文翻译系列 (20) -----第四章 ASP.NET MVC中使用实体框架之在MVC中构建一个CRUD示例
翻译的初衷以及为什么选择<Entity Framework 6 Recipes>来学习,请看本系列开篇 第四章 ASP.NET MVC中使用实体框架 ASP.NET是一个免费的Web框架 ...
- 在 ASP.NET MVC 中充分利用 WebGrid (microsoft 官方示例)
在 ASP.NET MVC 中充分利用 WebGrid https://msdn.microsoft.com/zh-cn/magazine/hh288075.aspx Stuart Leeks 下载代 ...
- 学习ASP.NET MVC(九)——“Code First Migrations ”工具使用示例
在上一篇文章中,我们学习了如何使用实体框架的“Code First Migrations ”工具,使用其中的“迁移”功能对模型类进行一些修改,同时同步更新对应数据库的表结构. 在本文章中,我们将使用“ ...
- MvcPager 概述 MvcPager 分页示例 — 标准Ajax分页 对SEO进行优化的ajax分页 (支持asp.net mvc)
该示例演示如何使用MvcPager最基本的Ajax分页模式. 使用AjaxHelper的Pager扩展方法来实现Ajax分页,使用Ajax分页模式时,必须至少指定MvcAjaxOptions的Upda ...
随机推荐
- 使用reflux进行react组件之间的通信
前言 组件之间为什么要通信?因为有依赖. 那么,作为React组件,怎么通信? React官网说, 进行 父-子 通信,可以直接pass props. 进行 子-父 通信,往父组件传给子组件的函数注入 ...
- Example For maven-compiler-plugin
1. Compiling Sources Using A Different JDK The compilerVersion parameter can be used to specify the ...
- pandas处理数据
读文件 pd.read_csv('path/to/file.txt',header=0,names='ab',index=0) names Columns这个可以不写,制定索引列是第一列,这样就没有序 ...
- 我的Markdown笔记
一片简单的Markdown笔记,共8项,基本上满足Markdown文档的编写(表格不建议用Markdown),每项上半部分是源码,下半部分是效果图片. 标题 段落 列表 强调 分割线 代码 连接 图片 ...
- Openfire用户密码加密解密
需求要求审核过程中都用匿名进行用户注册登录,注册用户审核通过后才使用openfire内置表 如何做到用户密码统一 Openfire是通过org.jivesoftware.util.Blowfish.j ...
- angularJS获取json数据(实战)
学习了这么多天的AngularJS,今天想从实战的角度和大家分享一个简单的Demo--用户查询系统,以巩固之前所学知识.功能需求需要满足两点 1.查询所有用户信息,并在前端展示 2.根据id查询用户信 ...
- JAX-WS使用Handler Chain加工消息
承前 本文的示例,是基于前一篇文章中的实例而改进的,如果想要运行本文的代码例子,需要先实现前一篇的代码. 前一篇文章JAX-WS开发WebService初级 Handler概念 在WebService ...
- Bootstrap之Carousel不能自动播放的解决办法(转)
Bootstrap是一个非常好的css/javaScript框架,尤其对于移动端的自适应和适配能力都比较强. 用Bootstrap自带的Carousel写了一个图片轮播的广告部分,用js调用后却出现了 ...
- web前端图片极限优化策略
随着web的发展,网站资源的流量也变得越来越大.据统计,60%的网站流量均来自网站图片,可见对图片合理优化可以大幅影响网站流量,减小带宽消耗和服务器压力. 一.现有web图片格式 我们先来看下现在常用 ...
- Calibre - book library management application
http://calibre-ebook.com/ Library Management E-book conversion Syncing to e-book reader devices Down ...