第一步:在页面上引入easyui的jQuery链接

  <script src="../../Scripts/easyUI/jquery-1.7.2.min.js" type="text/javascript"></script>
<script src="../../Scripts/easyUI/jquery.easyui.min.js" type="text/javascript"></script>
<script src="../../Scripts/easyUI/locale/easyui-lang-zh_CN.js" type="text/javascript"></script>
<link href="../../Scripts/easyUI/themes/gray/easyui.css" rel="stylesheet" type="text/css" />
<link href="../../Scripts/easyUI/themes/icon.css" rel="stylesheet" type="text/css" />

记住jquery-1.7.2.min.js这个文件要放在最前面,不然会出现jQuery未定义的错误

第二步:第一个table用来承载datagrid

 <table id="tab_list">
</table>

第三步:初始化datagrid(由于我用的是MVC故url对应的是控制器中的controller/Action)

 <script type="text/javascript">
$(function () {
InitGird();
}
) //初始化表格
function InitGird() {
$('#tab_list').datagrid({
title: '员工列表', //表格标题
// url: location.href, //请求数据的页面
url: '/DataGrid/GetJson ', //请求数据的页面
sortName: 'ID', //排序字段
idField: 'ID', //标识字段,主键
iconCls: '', //标题左边的图标
width: '80%', //宽度
height: $(parent.document).find("#mainPanle").height() - > ? $(parent.document).find("#mainPanle").height() - : , //高度
nowrap: false, //是否换行,True 就会把数据显示在一行里
striped: true, //True 奇偶行使用不同背景色
collapsible: false, //可折叠
sortOrder: 'desc', //排序类型
remoteSort: true, //定义是否从服务器给数据排序
frozenColumns: [[//冻结的列,不会随横向滚动轴移动
{field: 'cbx', checkbox: true },
{ title: '员工姓名', field: 'Name', width: , sortable: true },
{ title: '住址', field: 'Address', width: }
]],
columns: [[
// { title: '电话', field: 'Tel', formatter: function (value, rec, index) { return value == 0 ? '管理员' : '普通用户' }, width: 120 },
// { title: '是否超级管理员', field: 'JSON_isadmin',formatter:function(value,rec,index){return value==0?'否':'是'}, width: 100 },
{title: '电话', field: 'Tel', width: },
{ title: '部门', field: 'Department', width: },
{ title: '性别', field: 'Gender', width: },
{title: '邮箱地址', field: 'Email', width: },
{ title: '操作', field: 'ID', width: , formatter: function (value, rec) {
return '<a style="color:red" href="javascript:;" onclick="EditData(' + value + ');$(this).parent().click();return false;">修改</a>';
}
}
]],
toolbar: "#tab_toolbar",
queryParams: { "GetJson": "index" },
pagination: true, //是否开启分页
pageNumber: , //默认索引页
pageSize: , //默认一页数据条数
rownumbers: true //行号
// data:<%=ViewData["xx"]%>
}); }
</script>

第四步:控制器中返回数据

        [HttpPost]
public ActionResult GetJson()
{
//StringBuilder JsonString = new StringBuilder();
//EmployeInfo item = new EmployeInfo()
//{
// ID = 1,
// Name = "陈力宏",
// Address = "南浦",
// Tel = "13902872166",
// DepID = 1,
// Gender = "男",
// Email = "123@qq.com"
//};
//JsonString.Append("{");
//JsonString.Append("\"rows\":[ ");
//JsonString.Append("{");
//JsonString.Append("\"ID\":" + "\"" + item.ID + "\",");
//JsonString.Append("\"Name\":" + "\"" + item.Name.ToString() + "\",");
//JsonString.Append("\"Address\":" + "\"" + item.Address.ToString() + "\",");
//JsonString.Append("\"Tel\":" + "\"" + item.Tel.ToString() + "\",");
//JsonString.Append("\"Department\":" + "\"" + item.DepID.ToString() + "\",");
//JsonString.Append("\"Gender\":" + "\"" + item.Gender.ToString() + "\",");
//JsonString.Append("\"Email\":" + "\"" + item.Email.ToString() + "\"");
//JsonString.Append("}]");
//JsonString.Append(",");
//JsonString.Append("\"total\":");
//JsonString.Append(1);
//JsonString.Append("}");
// return View("88888");
////ViewData["xx"] = JsonString.ToString();
UserManagerServiceClient client = new UserManagerServiceClient(); //WCF服务中取出数据
//string test = client.GetDepartmentNodes(1002);
string JsonString = client.GetEmployee();
return Content(JsonString); //用Content返回json
// return Content(JsonString.ToString()); }

第五步:WCF中

     /// <summary>
///获取员工信息
/// </summary>
/// <returns></returns>
public string GetEmployee()
{
try
{
using (UserManageDB db = new UserManageDB())
{
List<EmployeInfo> employeInfoList = db.EmployeInfo.ToList();
string Json = ModelTOJson(employeInfoList);
return Json;
}
}
catch (Exception ex)
{
throw ex;
}
} /// <summary>
///
/// </summary>
/// <param name="employeInfoList"></param>
/// <returns></returns>
private string ModelTOJson(List<EmployeInfo> employeInfoList)
{
StringBuilder JsonString = new StringBuilder(); if (employeInfoList.Count > )
{
JsonString.Append("{");
JsonString.Append("\"rows\":[");
int count = ;
foreach (var item in employeInfoList)
{ JsonString.Append("{");
JsonString.Append("\"ID\":" + "\"" + item.ID + "\",");
//TODO:Replace()去掉特殊字符如:\ 和"
JsonString.Append("\"Name\":" +"\"" + item.Name.ToString() + "\"," );
JsonString.Append("\"Address\":" + "\"" + item.Address.ToString() +"\",");
JsonString.Append("\"Tel\":" + "\"" + item.Tel.ToString() + "\",");
JsonString.Append("\"Department\":" + "\"" + item.DepID.ToString() + "\"," ); //TODO:查找部门
JsonString.Append("\"Gender\":" + "\"" + item.Gender.ToString() + "\"," );
count++;
if (employeInfoList.Count == count)
{
JsonString.Append("\"Email\":" + "\"" + item.Email.ToString() + "\"}" );
}
else
{
JsonString.Append("\"Email\":" + "\"" + item.Email.ToString() + "\"}," );
}
}
JsonString.Append("]");
JsonString.Append(",");
JsonString.Append("\"total\":");
JsonString.Append(count);
JsonString.Append("}");
}
return JsonString.ToString();
}
}

Entityframework

  public class UserManageDB : DbContext
{
public UserManageDB()
: base("name = conn")
{
Database.SetInitializer<UserManageDB>(null);
} public IDbSet<Department> Department { get; set;}
public IDbSet<EmployeInfo> EmployeInfo { get; set; }
}

App.config

    <add name="conn" providerName="System.Data.SqlClient" connectionString="Server=Chenlh-PC\SQL2012;Database=UserManage;uid=sa;pwd=Chenlh123;Persist Security Info=True;" />

Model

 /// <summary>
/// 员工信息
/// </summary>
[DataContract]
[Table("dt_Employee")]
[Serializable]
public class EmployeInfo
{
#region 自定义成员变量 private int m_ID;
private string m_Name;
private string m_Address;
private string m_Tel;
private int m_DepID; //部门ID
private string m_Gender;
private string m_Email; #endregion #region 公共属性 /// <summary>
/// 员工ID号
/// </summary>
[DataMember]
[Column("ID")]
[Key]
public int ID
{
get
{
return m_ID;
}
set
{
m_ID = value;
}
} /// <summary>
/// 员工姓名
/// </summary>
[DataMember]
[Column("EmployeeName")]
public string Name
{
get
{
return m_Name;
}
set
{
m_Name = value;
}
} /// <summary>
/// 员工地址
/// </summary>
[DataMember]
[Column("Address")]
public string Address
{
get
{
return m_Address;
}
set
{
m_Address = value;
}
} /// <summary>
/// 员工电话
/// </summary>
[DataMember]
[Column("Tel")]
public string Tel
{
get
{
return m_Tel;
}
set
{
m_Tel = value;
}
} /// <summary>
/// 员工所属部门
/// </summary>
[DataMember]
[Column("DepID")]
public int DepID
{
get
{
return m_DepID;
}
set
{
m_DepID = value;
}
} /// <summary>
/// 员工性别
/// </summary>
[DataMember]
[Column("Gender")]
public string Gender
{
get
{
return m_Gender;
}
set
{
m_Gender = value;
}
} /// <summary>
/// 员工的Email
/// </summary>
[DataMember]
[Column("Email")]
public string Email
{
get
{
return m_Email;
}
set
{
m_Email = value;
}
}
#endregion
}

esayui-datagrid的使用的更多相关文章

  1. EsayUI datagrid 刷新问题

    最近使用esayui 实现前台界面,在对父页面中datagrid列表项进行操作后,如果操作子页面是依附于父页面弹出的窗体,那么调用parent.$("#grid").datagri ...

  2. 获得正在编辑行的数据 esayui datagrid

    function getEditRow(datagridId) {//datagridId为table容器的id var input = $('#' + datagridId).parent().fi ...

  3. esayUi中datagrid中json串为空时,显示上一次数据的解决方法

    function initSearchProject(startDate,finishDate,flag) {        $("#finishDate").val(finish ...

  4. 关于EsayUI中datagrid重复提交后台查询数据的问题

    直接上代码: <table id="XXXX" style="width:100%;height:100%;" class="easyui-da ...

  5. MVC+EF+esayui初试(一 布局加菜单显示)

    最近都在做linq+ext.net的开发.这两天想学习下MVC和ef,刚好,在看ext.js的时候也喜欢上了esayui,所以就想用mvc+ef+esayui做一个汽车网后台管理来加强下.在这里也把我 ...

  6. ASP.NET Aries 入门开发教程7:DataGrid的行操作(主键操作区)

    前言: 抓紧勤奋,再接再励,预计共10篇来结束这个系列. 上一篇介绍:ASP.NET Aries 入门开发教程6:列表数据表格的格式化处理及行内编辑 本篇介绍主键操作区相关内容. 1:什么时候有默认的 ...

  7. JQuery easyUI DataGrid 创建复杂列表头(译)

    » Create column groups in DataGrid The easyui DataGrid has ability to group columns, as the followin ...

  8. ASP.NET Aries DataGrid 配置表头说明文档

    DataGrid 配置表头 字段 中文 说明 Field 字段 注意:mg_ 开头的字段为层级表头 Title 列称 OrderNum 序号 显示的顺序(冻结和非冻结列是两个组的序号) Width 列 ...

  9. ASP.NET Aries JSAPI 文档说明:AR.DataGrid、AR.Dictionary

    AR.Global 文档 1:对象或属性: 名称 类型 说明 DG 对象 DataGrid操作对象 //datagrid集合,根据ID取出DataGrid对象,将Json当数组用. Items: ne ...

  10. ASP.NET Aries JSAPI 文档说明:AR.DataGrid

    AR.DataGrid 文档 用法: <body> <table id="dg"></table> </body> </htm ...

随机推荐

  1. 初始jQuery

    JQuery是继prototype之后又一个优秀的Javascript库.它是轻量级的js库 ,它兼容CSS3,还兼容各种浏览器(IE 6.0+, FF1.5+, Safari 2.0+, Opera ...

  2. html5 <input> placeholder 属性

    带有 placeholder 文本的搜索字段: <form action="demo_form.asp" method="get"> <inp ...

  3. Notepad++ 配置java编译环境

    仅限于学习java或小的java程序使用.正常写代码还是eclipse吧 ---------------------分割线----------------------------- 1.配置JDK环境 ...

  4. API 进程、线程函数

    CancelWaitableTimer 这个函数用于取消一个可以等待下去的计时器操作 CallNamedPipe 这个函数由一个希望通过管道通信的一个客户进程调用 ConnectNamedPipe 指 ...

  5. POJ 1202 Family 概率,DP,高精 难度:2

    http://poj.org/problem?id=1202 难度集中在输出格式上,因为输出格式所以是高精度 递推式: 血缘肯定只有从双亲传到儿子的,所以,设f,m为双亲,son为儿子,p[i][j] ...

  6. ARM安装ROS- indigo

    Ubuntu ARM install of ROS Indigo 溪西创客小屋 There are currently builds of ROS for Ubuntu Trusty armhf. T ...

  7. hdu 1034 (preprocess optimization, property of division to avoid if, decreasing order process) 分类: hdoj 2015-06-16 13:32 39人阅读 评论(0) 收藏

    IMO, version 1 better than version 2, version 2 better than version 3. make some preprocess to make ...

  8. Linux摄像头驱动学习之:(二)通过虚拟驱动vivi分析摄像头驱动

    一.通过指令 "strace -o xawtv.log xawtv" 得到以下调用信息:// 1~7都是在v4l2_open里调用1. open2. ioctl(4, VIDIOC ...

  9. GPT分区基础知识及如何在GPT分区上安装WIN7

    大硬盘和WIN8系统,让我们从传统的BIOS+MBR模式升级到UEFI+GPT模式,现在购买的主流电脑,都是预装WIN8系统,为了更好的支持2TB硬盘,更快速的启动win8,预装系统都采取了GPT分区 ...

  10. hadoop创建两大错误:Bad connection to FS. command aborted. exception和Shutting down NameNod...

    我的hadoop启动后,各个节点都正常,但是无法查看hdfs目录,错误提示 Bad connection to FS. command aborted.  查了下网上的解决办法,主要是删除tmp下的所 ...