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. XCode4.5.6,iOS6.1下测试 判断当前设备,及其联网状态等; 关于设备插上后XCode检测不出的情况的说明

    目录[-] 一.判断设备 二.判断网络连接状态 三.设备不显示的解决办法 一.判断设备 01 //设备名称 02 return [UIDevice currentDevice].name; 03   ...

  2. xamarin真的是一个鸡肋吗?

    team leader 极力推荐 Xamarin,于是下载下来体验了一把,并没有觉得用它来开发 App 会爽到哪里去,可能对于从事 C#开发的开发人员来说是个福音吧.于是看看别人对其评价如何,现粘贴如 ...

  3. October 19th Week 43rd Wednesday, 2016

    I find that the harder I work, the more luck I seem to have. 越努力,越幸运. However, I find that the harde ...

  4. html中的a标签(超链接)的使用

    a标签即超链接,用于从一张页面链接到另一张页面.其最重要的属性是href属性,它指示链接的目标. 例如: <a href="http://www.baidu.com/"> ...

  5. sqlserver 中row_number,rank,dense_rank,ntile排名函数的用法

    1.row_number() 就是行号 2.rank:类似于row_number,不同之处在于,它会对order by 的字段进行处理,如果这个字段值相同,那么,行号保持不变 3.dense_rank ...

  6. 注解:【基于外键的】Hibernate双向1->1关联

    Person与Address关联:双向1->1,[基于外键的]. #主表不应该控制关联关系.(否则会导致生成额外的update语句,从而导致性能下降), #因此主表对应的实体中使用@OneToO ...

  7. 黑科技装点圣诞节,美国邮政局用AR APP邮寄圣诞包裹

    AR手游<精灵宝可梦Go>的出现将增强现实技术带到了众人的视线中,各大公司纷纷紧抓AR的发展前景,同时积极将AR功能引入自家产品中.临近圣诞,又到了一年一度的快递高峰期,据591ARVR资 ...

  8. 【BZOJ】3526: [Poi2014]Card

    题意 \(n(n \le 200000)\)张卡片,正反有两个数\(a[i], b[i]\).\(m(m \le 1000000)\)次操作,每次交换\(c[i].d[i]\)位置上的卡片.每一次操作 ...

  9. 基于.NET的免费开源的模板引擎---VTemplate(转)

    1.VTemplate模板引擎的简介 VTemplate模板引擎也简称为VT,是基于.NET的模板引擎,它允许任何人使用简单的类似HTML语法的模板语言来引用.NET里定义的对象.当VTemplate ...

  10. poco json 中文字符,抛异常JSON Exception -->iconv 转换 备忘录。

    起因 最近linux服务器通信需要用到json. jsoncpp比较出名,但poco 1.5版本以后已经带有json库,所以决定使用poco::json(linux 上已经用到了poco这一套框架). ...