分页控件Webdiyer.MvcPager
MVC
1、安装控件
install-package Webdiyer.MvcPager
2、Cotroller
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using Huo.CMS.Web.Models;
using Webdiyer.WebControls.Mvc; namespace Huo.CMS.Web.Controllers
{
public class ArticleController : Controller
{
// GET: Article
public ActionResult Index(int pageIndex = , string search = "", string category = "", string date = "")
{
var query = from a in ArticleList.AsQueryable()
where a.Category.Equals(category)
select a;
var data = query.OrderByDescending(p => p.CreateDate).ToPagedList(pageIndex, );
if (Request.IsAjaxRequest())
{
return PartialView("_ArticleTable", data);
}
return View(data);
} private IList<VMArticle> ArticleList
{
get
{
List<VMArticle> list = new List<VMArticle>()
{
new VMArticle() {Category = "book",CreateDate = DateTime.Now,Id=,ImagePath = "",Name = "稀有",Price = ,Title = "疯狂"},
new VMArticle() {Category = "book",CreateDate = DateTime.Now,Id=,ImagePath = "",Name = "稀有",Price = ,Title = "端点"},
new VMArticle() {Category = "book",CreateDate = DateTime.Now,Id=,ImagePath = "",Name = "稀有",Price = ,Title = "等等"},
new VMArticle() {Category = "book",CreateDate = DateTime.Now,Id=,ImagePath = "",Name = "稀有",Price = ,Title = "单独"}, new VMArticle() {Category = "phone",CreateDate = DateTime.Now,Id=,ImagePath = "",Name = "稀有",Price = ,Title = "苹果"},
new VMArticle() {Category = "phone",CreateDate = DateTime.Now,Id=,ImagePath = "",Name = "稀有",Price = ,Title = "小米"},
new VMArticle() {Category = "phone",CreateDate = DateTime.Now,Id=,ImagePath = "",Name = "稀有",Price = ,Title = "华为"},
new VMArticle() {Category = "phone",CreateDate = DateTime.Now,Id=,ImagePath = "",Name = "稀有",Price = ,Title = "三星"}, new VMArticle() {Category = "soft",CreateDate = DateTime.Now,Id=,ImagePath = "",Name = "稀有",Price = ,Title = "微软"},
new VMArticle() {Category = "soft",CreateDate = DateTime.Now,Id=,ImagePath = "",Name = "稀有",Price = ,Title = "甲骨文"},
new VMArticle() {Category = "soft",CreateDate = DateTime.Now,Id=,ImagePath = "",Name = "稀有",Price = ,Title = "谷歌"},
new VMArticle() {Category = "soft",CreateDate = DateTime.Now,Id=,ImagePath = "",Name = "稀有",Price = ,Title = "亚马逊"}, }; return list;
}
}
}
}
示例 Code
3、View
部分视图
@using Webdiyer.WebControls.Mvc
@model PagedList<Huo.CMS.Web.Models.VMArticle>
<div class="product-list">
@foreach (var item in Model)
{
<div class="product-item">
<a href="~/product/item?id=@item.Id">
<img src="@item.ImagePath" />
<h6>@item.Title</h6>
<span class="when">创建时间:@item.CreateDate.ToString("yyyy-MM-dd") @item.CreateDate.ToString("HH:mm")</span>
<span class="where">作者:@item.Name</span>
<span class="price">打赏:<h3>¥@item.Price</h3></span>
<span class="level">分类:@item.Category</span>
</a>
</div>
}
</div>
<div class="pagenav">
@Ajax.Pager(Model, new PagerOptions { PageIndexParameterName = "pageIndex", ContainerTagName = "div", CssClass = "", CurrentPagerItemTemplate = "<a href=\"#\" class='on'>{0}</a>", DisabledPagerItemTemplate = "<a class=\"disabled\">{0}</a>", PagerItemTemplate = "" }).AjaxOptions(a => a.SetUpdateTargetId("ProductList").SetDataFormId("searchForm"))
</div>
主视图
@using Webdiyer.WebControls.Mvc
@model PagedList<Huo.CMS.Web.Models.VMArticle>
@{
ViewBag.Title = "Index";
} <div class="container">
@using (Ajax.BeginForm("Index", "Article", new RouteValueDictionary { { "pageIndex", "" } }, new AjaxOptions { UpdateTargetId = "ProductList", HttpMethod = "Get", InsertionMode = InsertionMode.Replace }, new RouteValueDictionary { { "id", "searchForm" }, { "class", "form-inline well well-sm" } }))
{
<div class="searchform">
<input type="text" name="search" placeholder="搜索考试名称" />
<button type="submit" id="btn">搜索</button>
<input type="hidden" id="date" name="date" />
<input type="hidden" id="category" name="category" />
</div>
<div class="product-mod">
<div class="product-tool">
<span>默认排序</span>
<dl class="subjectBox">
<dt>分类:</dt>
<dd class="info" onclick="SetCategory('book', this)">书籍</dd>
<dd class="info" onclick="SetCategory('phone', this)">手机</dd>
<dd class="info" onclick="SetCategory('soft', this)">软件</dd>
</dl>
<dl class="timeBox">
<dt>时间分类:</dt>
<dd class="info1" onclick="SetDate('Week', this)">近一周</dd>
<dd class="info1" onclick="SetDate('Month', this)">近一月</dd>
<dd class="info1" onclick="SetDate('Year', this)">近一年</dd>
</dl>
</div>
</div>
}
<div id="ProductList">
@{ Html.RenderPartial("_ArticleTable"); }
</div> </div> @Scripts.Render("~/Scripts/MvcPager.js")
@Scripts.Render("~/Scripts/jquery.unobtrusive-ajax.min.js")
<script>
function SetDate(filter, ele) {
debugger;
var c = $(ele);
var b = c.hasClass("selected");
$(".info1", ".timeBox").removeClass("selected"); if (b) {
c.removeClass("selected");
$("#date").val("");
}
else {
c.addClass("selected");
$("#date").val(filter);
}
$("#btn").click(); }
function SetCategory(filter, ele) {
var c = $(ele);
var b = c.hasClass("selected");
$(".info", ".subjectBox").removeClass("selected"); if (b) {
c.removeClass("selected");
$("#category").val("");
}
else {
c.addClass("selected");
$("#category").val(filter);
}
$("#btn").click();
}
</script>
分页控件Webdiyer.MvcPager的更多相关文章
- .net分页控件webdiyer:AspNetPager
首先下载:AspNetPager.dll AspNetPager.xml 放到bin目录下 页面添加<%@ Register Assembly="AspNetPager" ...
- MvcPager 免费开源分页控件3.0版发布!
MvcPager 3.0版在原2.0版的基础上进行了较大的升级,对MvcPager脚本插件重写并进行了大量优化.修复了部分bug并新增了客户端Javascript API等功能,使用更方便,功能更强大 ...
- MvcPager分页控件的使用
1.引入MvcPager.dll(MvcPager分页控件:http://www.webdiyer.com/mvcpager/) 2.后台C# Controller: //Ddemo使用Webdiye ...
- MvcPager分页控件以适用Bootstrap
随笔- 9 文章- 0 评论- 33 修改MvcPager分页控件以适用Bootstrap 效果(含英文版,可下载) 软件开发分页效果必不可少,对于Asp.Net MVC 而言,MvcPag ...
- MvcPager分页控件使用注意事项!
初学MVC,做了个单页面应用,需要显示多个分页,并无刷新更新. 找到了MvcPager控件,非常好用,在使用ajax过程中遇到很多问题.慢慢调试和杨老师(MvcPaegr作者)请教,总于都解决了. 首 ...
- 开源mvcpager分页控件分页实例
最近MVC需要用到分页,然后在网上找了一圈,发现一个很好用的分页控件,在此要感谢作者的辛勤劳动. 下载Pager 这个分页控件也有Asp.net的支持,需要的去看看作者的主页 webdiyer 先看看 ...
- 基于存储过程的MVC开源分页控件--LYB.NET.SPPager
摘要 现在基于ASP.NET MVC的分页控件我想大家都不陌生了,百度一下一大箩筐.其中有不少精品,陕北吴旗娃杨涛大哥做的分页控件MVCPager(http://www.webdiyer.com/)算 ...
- MVC——分页控件
不管是什么类型的网站,分页都是必不可少的功能实现.在这里记录一下我自己接触过的分页控件: 一. MvcPager控件(记得项目里添加MvcPager.dll的引用) 这里面比较常用的就 ——@Html ...
- 基于存储过程的MVC开源分页控件
基于存储过程的MVC开源分页控件--LYB.NET.SPPager 摘要 现在基于ASP.NET MVC的分页控件我想大家都不陌生了,百度一下一大箩筐.其中有不少精品,陕北吴旗娃杨涛大哥做的分页控件M ...
随机推荐
- java日志框架系列(9):logback框架过滤器(filter)详解
过滤器放在了logback-classic模块中. 1.logback-classic模块中过滤器 分类(2种):常规过滤器.TurboFilter过滤器. 1.常规过滤器 常规过滤器可以通过自定义进 ...
- windows自动化测试 (python)
装插件 pywinauto 命令 pip install --upgrade pywinauto 最简单的一个例子,中文环境下 from pywinauto.application impor ...
- Python 【收发邮件】
发邮件 smtplib模块主要负责发送邮件 email模块主要负责构造邮件.这两个都是Python内置模块 smtplib.SMTP.方法 #按住Ctrl键并点击SMTP ,会看到对SMTP的解释(v ...
- Git 版本恢复命令reset
reset命令有3中方式: git reset -mixed: 此为默认方式,不带任何参数的git reset, 使用这种方式,项目会回退到某个版本,只保留源码,回退commit和index的信息. ...
- pandas之数据IO笔记
pandas在进行数据存储与输出时会做一些相应的操作 1.*索引:将一个列或多个列读取出来构成DataFrame,其中涉及是否从文件中读取索引以及列名 2 *类型推断和数据转换:包括用户自定义的转换以 ...
- Nginx学习笔记(四):基本数据结构
目录 Nginx的一些特点 Nginx自定义整数类型 异常机制错误处理 内存池 字符串 时间与日期 运行日志 Nginx的一些特点 高性能 采用事件驱动模型,可以无阻塞的处理海量并发连接 高稳定性 ...
- vsftp多个用户公享同一个文件,但是权限不同
如标题:vsftp多个用户公享同一个文件,但是权限不同.如何做到呢.首先创建多个用户,并且指定同一个目录
- Idea 使用 Junit4 进行单元测试
目录 Idea 使用 Junit4 进行单元测试 1. Junit4 依赖安装 2. 编写测试代码 3. 生成测试类 4. 运行 Idea 使用 Junit4 进行单元测试 1. Junit4 依赖安 ...
- 轻松搭建CAS 5.x系列(7)-在CAS Server使用第三方帐号做认证
概述说明 CAS除了使用自身数据库配置的帐号体系外,也可以使用第三方帐号来做认证. 比如实现如下类似的红色标注部分的登录效果: CAS自带了Facebook.GitHub.WordPress和CAS的 ...
- (十)Activitivi5之启动流程/完成任务的时候设置流程变量
一.启动流程的时候设置流程变量 1.1 案例 /** * 启动流程实例 */ @Test public void start() { Student student=new Student(); st ...