DataTable转为json并绑定Easyui的datagrid控件

原创 2015年04月01日 11:38:56
最近突然对EasyUi的crud比较感兴趣,于是到它们官网看了看Demo,发 现easyui的crud操作还是比较简单的,但是由于easyui封装的比较紧密这就造成了我们不容易理解。
 我们先从显示界面分析其Html代码:
<table id="dg" title="My Users" class="easyui-datagrid" style="width:700px;height:250px"
    url="get_users.ashx"
    toolbar="#toolbar" pagination="true"
    rownumbers="true" fitColumns="true" singleSelect="true">
    <thead>
        <tr>
            <th field="firstname" width="50">First Name</th>
            <th field="lastname" width="50">Last Name</th>
            <th field="phone" width="50">Phone</th>
            <th field="email" width="50">Email</th>
        </tr>
    </thead>
</table>
<div id="toolbar">
<a href="#" class="easyui-linkbutton" iconCls="icon-add" plain="true" onclick="newUser()">New User</a>
<a href="#" class="easyui-linkbutton" iconCls="icon-edit" plain="true" onclick="editUser()">Edit User</a>
<a href="#" class="easyui-linkbutton" iconCls="icon-remove" plain="true" onclick="removeUser()">Remove User</a>
</div>
在这里我先介绍属性url,url写入的地址(即从该地址进入后台获取数据),然后再通过field属性绑定数据。了解到这里我们会发现碰到一个问题:就是从后台读取数据直接返回的话,我们会发现数据并没有绑定datagrid,分析原因是js只能接收json类型数据,这里就要求我们将后台获取的数据转为json格式再返回到前台。
后台我是通过数据库操作返回一个DataTable类型的,这里就要求我们将DataTable类型转化为json类型具体代码如下:
StringBuilder json = new StringBuilder();
DataTable dt = GetTable();
 json.Append("[");
      if (dt.Rows.Count > 0)
        {
           for (int j = 0; j < dt.Rows.Count; j++)
            {
                json.Append("{");
                for (int i = 0; i < dt.Columns.Count; i++)
                {
                    json.Append(string.Format("\"{0}\":\"{1}\",", dt.Columns[i].ColumnName, dt.Rows[j][i].ToString()));
                }
                json.Remove(json.ToString().LastIndexOf(","),1);
                json.Append("}");
                json.Append(",");
            }

           }
        json.Remove(json.ToString().LastIndexOf(","), 1);
        json.Append(']');
        Response。write(json);

效果如下图所示:
这里写图片描述
暂时就写到这了,小弟第一次写技术贴不容易,表达不好望见谅,如果有讲错的地方请多多指教,大家一起进步。

EasyUI----DataTable转拼EasyUI Tree

在做系统的时候,有一些组织机构类的关系,成树状结构,前台用的是EasyUI,由于涉及到多张表的数据,想要动态的拼接出一个树状的组织结构,后台传过来的是DataTable。 /// ...
  • u010853701
  • u010853701
  • 2015年07月31日 18:42
  • 2243

jquery easy ui datagrid 纯后台分页实现

jquery easyui的datagrid可以容易实现分页,但大多数是实现前台javascirpt分页,如果数据库数据特别大,一次查询的数据交给前台分页,浏览器多半死机。所以需要在后台查询指定的页的...
  • Metal1
  • Metal1
  • 2015年10月09日 10:38
  • 12807

easyui datagrid 动态列和前端分页,以及加载Datatable

项目中用到一个执行SQL,展示结果的功能。所以需要动态改变datagrid的列,最好是使用后台分页,但没找到方法,所以使用了前端分页。 后台代码: StringBuil...
  • zhpengfei0915
  • zhpengfei0915
  • 2013年10月31日 18:31
  • 1628

[Javascript][easyui]DataGrid绑定JSON的方法

DataGrid绑定JSON的方法     var json={"total":28,"rows":[ {"productid":"FI-SW-01","unitcost":10.00,"s...
  • szwangdf
  • szwangdf
  • 2012年01月04日 21:14
  • 19046

DataTable 与 datagrid控件

datagrid控件的作用简单点说就是将表格显示出来,用的多的是直接链接数据库文件,也可以自己见一个表格对象,链接到datagrid控件,下面是一个简单的例子             DataT...
  • jiliqiang1986
  • jiliqiang1986
  • 2016年07月26日 13:39
  • 1600

项目总结—jQuery EasyUI- DataGrid使用

jQuery EasyUI是一个基于jquery的集成了各种用户界面的框架,使用easyui我们不需要写太多javascript代码,一般情况下我们只需要使用一些html标记来定义用户接口,easyu...
  • zwk626542417
  • zwk626542417
  • 2014年01月28日 10:22
  • 34078

Easyui datagrid加载本地Json数据

var jsonstr = '{"total":1,"rows":[{"id":"M000005","name":"检测设备","sortid":3,"valid":"1","handler":"系统...
  • dqsweet
  • dqsweet
  • 2012年03月09日 00:52
  • 38038

easyui datagrid如何加载通过ajax获得的json格式的数据

文章为转载,地址:http://www.xue163.com/588880/39097/390970679.html 为了帮助网友解决“easyui datagrid如何加载通”相关的问题,中国...
  • sam111_222
  • sam111_222
  • 2015年03月12日 11:48
  • 4550

Jquery easyui从零单排之datagrid数据绑定

自己写的前端,感觉太丑了,所以在网上找到了jquery easyui,样式也蛮漂亮的,闲暇之余就开始慢慢学习。 官网(jquery easyui官网)上也是大致描述了一些东西,但是绝对不够全面,网上其...
  • yangmingxing980
  • yangmingxing980
  • 2015年12月08日 16:34
  • 3105

WPF中DataGrid数据绑定(泛型和datatable)

前台代码: ...
  • kwy15732621629
  • kwy15732621629
  • 2016年07月16日 19:53
  • 3481
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:DataTable转为json并绑定Easyui的datagrid控件
举报原因:
原因补充:

(最多只允许输入30个字)