浅谈MVC+EF easyui dataGrid 动态加载分页表格
首先上javascript的代码
<scripttype="text/javascript">
$(function(){
LoadGrid();
})
//加载表格!!!
functionLoadGrid(){
$('#roleGrid').datagrid({
width:900,
striped:true,//交替条纹
fitColumns:true,//防止水平滚动
fit:true,//自动补全
iconCls:"icon-save",//图标
idField:'RoleId',//唯一列
url:"GetRoles",
dataType:"json",
singleSelect:true,//设置为true将只允许选择一行
loadMsg:'正在拼命加载,请稍后...',
rownumbers:false,//显示行数
pagination:true,//底部分页工具栏
nowrap:true,//截取超出部分的数据
checkOnSelect:true,//点击一行的时候checkboxchecked(选择)/unchecked(取消选择)
pageNumber:1,//初始化分页码。
pageSize:10,//初始化每页记录数。
pageList:[5,10,30],//初始化每页记录数列表
showFooter:false,//定义是否显示行底
columns:[[
{field:"RoleId",title:"角色编号",width:60,align:"center",sortable:"true"},
{field:"RoleName",title:"角色名称",width:100,align:"center"},
{field:"RoleRemarks",title:"备注",width:100,align:"center"},
{
field:"IsStatus",title:"状态",width:60,align:"center",formatter:function(value,row,index){
if(value=="0"){
return"正常";
}elseif(value=="1"){
return"停用";
}
}
},
{
field:"edit",title:"操作",align:"center",width:80,formatter:function(value,row,index){
vardetail='<astyle="padding:1px;color:black;"onclick="editRole('+index+')"><iclass="fafa-edit"></i>编辑</a>';
vardeleteBtn='<astyle="color:black;"onclick="delRole('+index+')"><iclass="fafa-trash-o"></i>删除</>';
varsetrole='<astyle="color:black;"onclick="setRights('+index+')"><iclass="fafa-exclamation-triangle"></i>设置权限</>';
return" "+detail+" | "+deleteBtn+" | "+setrole;
}
}
]]//列
});
};
functioneditRole(i){//编辑按钮的方法
varrows=$("#roleGrid").datagrid("getRows");
layer.open({
title:false,
type:2,
closeBtn:false,
area:['420px','418px'],
skin:'layui-layer-rim',//加上边框
content:['/Admin/ShowForm/EidtRole','no'],
success:function(layero,index){
varbody=layer.getChildFrame('body',index);
body.contents().find("#roleId").val(rows[i].RoleId);
body.contents().find("#roleName").val(rows[i].RoleName);
if(rows[i].RoleRemarks!="-"){
body.contents().find("#remarks").val(rows[i].RoleRemarks);
}
body.contents().find("#isstutas").val(rows[i].IsStatus);
}
});
}
functiondelRole(i){//删除用户
varrows=$("#roleGrid").datagrid("getRows");
varpostData={
roleId:rows[i].RoleId
};
layer.confirm('确认删除该角色?',{
btn:['确认','取消'],//按钮
shade:false//不显示遮罩
},function(index){
$.ajax({
type:"POST",
url:"DeleRole",
data:postData,
success:function(result){
if(result=="true"){
layer.msg("操作成功!",{
icon:6,
time:1000,
},function(){
$("#roleGrid").datagrid("reload");
layer.close(index);
});
}elseif(result=="false"){
layer.msg("操作失败!",{icon:2});
}elseif(result=="msg"){
layer.msg("系统错误,请联系管理员!",{icon:0});
}
}
});
},function(index){
layer.close(index);
});
}
然后是html
<tableid="roleGrid"></table>
最后是控制器的方法(这一部分是最重要的,表格能否显示数据,全看这一部分)
///<summary>
///动态生成表格的数据
///</summary>
///<paramname="page"></param>
///<paramname="rows"></param>
///<returns></returns>
publicJsonResultGetRoles(int?page,int?rows)
{
page=page==null?1:page;//第几页
rows=rows==null?1:rows;//行数
List<role>rList=rService.GetAllRoles(Convert.ToInt32(page),Convert.ToInt32(rows));
List<role>roleList=newList<role>();
for(inti=0;i<rList.Count;i++)
{
roler=newrole();
r.RoleId=rList[i].RoleId;
r.RoleName=rList[i].RoleName;
if(string.IsNullOrEmpty(rList[i].RoleRemarks))
{
r.RoleRemarks="-";
}
else
{
r.RoleRemarks=rList[i].RoleRemarks;
}
r.IsStatus=rList[i].IsStatus;
roleList.Add(r);
}
varjson=new
{
total=rService.GetTotal(),
rows=roleList
};
returnJson(json,JsonRequestBehavior.AllowGet);
}
最后的最后是控制器相关的方法
///<summary>
///分页的数据
///</summary>
///<paramname="page"></param>
///<paramname="rows"></param>
///<returns></returns>
publicList<role>GetAllRoles(intpage,introws)
{
using(diamondEntitiesentity=newdiamondEntities())
{
IQueryable<role>role=entity.roles.OrderBy(a=>a.RoleId).Skip((page-1)*rows).Take(rows);
List<role>roleList=role.ToList<role>();
if(roleList.Count>0)
{
returnroleList;
}
else
{
returnnull;
}
}
}
///<summary>
///获取总页数
///</summary>
///<returns></returns>
publicintGetTotal()
{
using(diamondEntitiesentity=newdiamondEntities())
{
IQueryable<role>user=entity.roles.Select(m=>m);
List<role>userList=user.ToList();
returnuserList.Count;
}
}
以上就是小编为大家带来的浅谈MVC+EFeasyuidataGrid动态加载分页表格全部内容了,希望大家多多支持毛票票~