View

   <script type="text/javascript">
var dd;
var grid;
$(function () {
var queryData = null;
grid = $('#grid').datagrid({ //定位到Table标签,Table标签的ID是grid
url: '@Url.Action("getUserList")', //指向后台的Action来获取当前菜单的信息的Json格式的数据
title: '用户菜单',
iconCls: 'icon-view',
height: ,
width: function () { return document.body.clientWidth * 0.9 },
nowrap: true,
autoRowHeight: false,
striped: true,
collapsible: true,
pagination: true, //分页插件置为true
pageSize: , //每页显示几条数据
pageNumber: , //页索引
rownumbers: true,
sortOrder: 'asc',
remoteSort: false,
idField: 'U_ID',
columns: [[
{ field: 'ck', checkbox: true }, //选择
{title: '用户名', field: 'U_Name', width: },
{ title: '角色名称', field: 'R_Name', width: },
]],
toolbar: [{
id: 'btnAdd',
text: '添加',
iconCls: 'icon-add',
handler: function () {
ShowAddDialog(); //实现添加记录的页面
}
}, '-', {
id: 'btnEdit',
text: '编辑',
iconCls: 'icon-edit',
handler: function () {
var selected = grid.datagrid("getSelected");
if (selected) {
var userID = selected.U_ID;
ShowEditOrViewDialog(userID); //实现修改记录的方法
} else {
$.messager.alert("友情提示", "请选择");
}
}
}, '-', {
id: 'btnDelete',
text: '删除',
iconCls: 'icon-remove',
handler: function () {
Delete(); //实现直接删除数据的方法
}
},
'-', {
id: 'btnReload',
text: '刷新',
iconCls: 'icon-reload',
handler: function () {
//实现刷新栏目中的数据
$("#grid").datagrid("reload");
}
}],
onDblClickRow: function (rowIndex, rowData) {
$('#grid').datagrid('uncheckAll');
$('#grid').datagrid('checkRow', rowIndex);
ShowEditOrViewDialog(rowData.D_id);
}
})
</script>

Controller:

 /// <summary>
/// 获取用户列表
/// </summary>
public ActionResult getUserList()
{
//判断参数不为空
if (string.IsNullOrEmpty(Request.Params["page"]))
{
return null;
}
//获取前台参数数组值
var page = Request.Params["page"];
var pageSize = Request.Params["rows"];
var pageIndex = int.Parse(page) - ;
using (UserService.UserContractClient client = new UserService.UserContractClient())
{
int size = Convert.ToInt32(pageSize);
int index = Convert.ToInt32(pageIndex); RoleService.RoleContractClient role = new RoleService.RoleContractClient();
List<Role> rolelist = role.GetList().ToList();
//管理员全部显示 其他角色显示部分
var adminuser = (User)Session["adminuser"];
var rid = adminuser.U_RoleID;
var uid = adminuser.U_ID;
string rname = role.GetRole(rid.ToString()).R_Name;
if (rname.Contains("管理员"))
{
List<User> userlist = client.GetList().OrderByDescending(s => s.U_ID).ToList();
//获取符合条件的用户总条数
int totalCount = userlist.Count();
var query = from b in rolelist
from c in userlist
where c.U_RoleID == b.R_ID
select new { c.U_ID, c.U_Name, b.R_Name };
//分页
query = query.Skip(size * (index)).Take(size);
var jsonResult = new { total = totalCount, rows = query };
return Json(jsonResult, JsonRequestBehavior.AllowGet);
}
else
{
List<User> userlist = client.GetListOrderBy(uid).OrderByDescending(s => s.U_ID).Skip(size * (index)).Take(size).ToList();
//获取符合条件的所有记录条数
int totalCount = userlist.Count();
var query = from b in rolelist
from c in userlist
where c.U_RoleID == b.R_ID
select new { c.U_ID, c.U_Name, b.R_Name };
var jsonResult = new { total = totalCount, rows = query };
return Json(jsonResult, JsonRequestBehavior.AllowGet);
}
}
}

Controller

easyui 分页 MVC的更多相关文章

  1. 前端基于easyui的mvc扩展(续)

    前端基于easyui的mvc扩展(续) 回顾及遗留问题 上一篇讲解了基于easyui的mvc扩展的基本实现,已经降低了在mvc内使用easyui的难度,但是仍然还有一些问题: 当我们要给生成的控件设置 ...

  2. 【技巧】EasyUI分页组件pagination显示项控制

    我们使用easyui分页时,分页组件显示项有很多,默认如下是这样的: 有时候我们并不想显示这么多控制项,我们可以通过属性来控制:如下来自EasyUI官网: 如下写法,在datagrid中使用,如下控制 ...

  3. easyui分页的使用方法

    使用: $("#tt").datagrid("getPager").pagination(option); 例子: $("#tb").dat ...

  4. MVC 使用Jquery EasyUI分页成功

    先上图吧

  5. jquery easyui datagrid mvc server端分页排序筛选的实现

    1自定义一个ModelBinder public class filterRule { public string field { get; set; } public string op { get ...

  6. EasyUI + Spring MVC + hibernate实现增删改查导入导出

    (这是一个故事--) 前言 作为一个JAVA开发工程师,我觉得最基本是需要懂前端.后台以及数据库. 练习的内容很基础,包括:基本增删改查.模糊查询.分页查询.树菜单.上传下载.tab页 主管发我一个已 ...

  7. easyui 分页实现

    1.用datagrid 做分页显示, 依据API样例,最终解决.废话不说,datagrid分页 有一个附加的分页控件 通过在datagrid中设置pagination:true 就会显示分页 当请求是 ...

  8. 后台使用oracle前台使用easyui分页机制

    前台easyui 的datagrid中设置分页属性: pagination:true,//显示分页 pagePosition:'bottom',//分页栏位置 both 上下 bottom.top p ...

  9. easyUI分页实现加搜索功能

    前台页面: js代码: ps:pagination为true时会在table下面加上easyUI的分页. load函数会将查询值传给datagrid并传给后台重新加载. DAO.xml为: 后台代码实 ...

随机推荐

  1. C#反射机制 (转载)

    转载:原文出处      http://www.cnblogs.com/binfire/archive/2013/01/17/2864887.html 一:反射的定义 审查元数据并收集关于它的类型信息 ...

  2. Lattice FPGA 板子 调试笔记

    最近在调试LATTICE  FPGA 做的视频板子,颇不顺利,所以记录下来作为以后的参考: 1.FPGA的IO口不是所有的都是双向的,有些有特殊作用的是单向的. 在查阅 LatticeECP3-17E ...

  3. springMVC 的工作原理和机制

    工作原理上面的是springMVC的工作原理图: 1.客户端发出一个http请求给web服务器,web服务器对http请求进行解析,如果匹配DispatcherServlet的请求映射路径(在web. ...

  4. 与你相遇好幸运,aglio写接口文档

    npm install -g aglio npm i aglio-theme-minimal aglio --theme-full-width -t minimal -i ./src/index.md ...

  5. 基于Libevent的HTTP Server

    简单的Http Server 使用Libevent内置的http相关接口,可以很容易的构建一个Http Server,一个简单的Http Server如下: #include <event2/e ...

  6. 在CentOS7上安装Docker

    具体过程如下 到网站下载centos7: http://isoredirect.centos.org/ http://isoredirect.centos.org/centos/7/isos/x86_ ...

  7. Oracle监听的静态注册和动态注册

    静态注册:通过解析listene.ora文件 动态注册:由PMON进程动态注册至监听中 在没有listener.ora配置文件的情况下,如果启动监听,则监听为动态注册.用图形化netca创建的监听,默 ...

  8. 三言两语之js面向对象初探1

    http://www.cnblogs.com/54td/p/5580994.htm    先是有了这个比较简短但是内容比较丰盈的上篇,现在时间比较充沛,所以详细写来.搞前端的同学经常被其他程序员bs, ...

  9. 简单CSS3动画制作

    本贴已重新编辑至http://www.cnblogs.com/fastmover/p/4977358.html 最近需要用到了一些CSS3动画,基本用Animate.css(https://githu ...

  10. Android 自动化测试—robotium(十一) robotium实现微博绑定

    利用robotium实现微博的自动绑定 android应用进行微博绑定主要有两种方式,一种客户端实现个webView,请求微博默认的授权页,另一种则是直接调用微博客户端,这里实现的为前一种,即进和微博 ...