项目总结—jQuery EasyUI-DataGrid动态加载表头

 
 
 

概要

在前面两篇文章中,我们已经介绍了在jQuery EasyUI-DataGrid中有参数和无参数的情况下将数据库中数据显示到前台,但是对于前面两篇文章显示的数据表头是固定的,如果我们显示到前台的数据来自数据库不同的表,那么表头也需要动态的加载,这篇文章我们就来看下在EasyUI-DataGrid中动态加载表头和数据.

实现

我们要实现的功能是根据我们的需要,让DataGrid显示不同的数据,表头也同样在变,我们可以先看下我们要实现功能的页面.

如图所示我们点击左侧不同的节点,右侧将会显示不同DataGrid的数据.

现在我们来看下前台html页的代码,因为表头是变的,所以我们的前台代码跟前面两篇博客就有点不一样了.

  1. <divdata-optionsdivdata-options="region:'center',title:'考核对象数据录入情况',iconCls:'icon-ok'">
  2. <divclassdivclass="demo-info"data-options="fit:true,border:false,plain:true">
  3. <table id="dg"title="考核对象数据计算得分" class="easyui-datagrid"style="width: 900px; height: 400px; padding-left: 200px;"data-options="rownumbers:true,pageSize:5,pageList:[5,10,15,20],method:'get',"
  4. pagination="true" rownumbers="true"fitcolumns="false" striped="true"singleselect="true">
  5. <thead>
  6. </thead>
  7. </table>
  8. </div>
  9. </div>
<divdata-options="region:'center',title:'考核对象数据录入情况',iconCls:'icon-ok'">
<divclass="demo-info"data-options="fit:true,border:false,plain:true"> <table id="dg"title="考核对象数据计算得分" class="easyui-datagrid"style="width: 900px; height: 400px; padding-left: 200px;"data-options="rownumbers:true,pageSize:5,pageList:[5,10,15,20],method:'get',"
pagination="true" rownumbers="true"fitcolumns="false" striped="true"singleselect="true">
<thead>
</thead> </table>
</div> </div>

接下来我们就看下js代码生成表头的代码,如图所示的县市区定量的表头.

  1. //县市区定量指标计算情况查询
  2. function reloadgridCityQuanty() {
  3. var test =document.getElementById("NodeChild").innerHTML;
  4. //于一般处理程序进行交互,同时生成县市区定量表头
  5. $('#dg').datagrid({
  6. url:"CalculateScoreFrameCity.ashx?test=" + test,
  7. columns: [[
  8. { field: 'TargerName',title: '指标名称', width: 300 },
  9. { field: 'ConditionInput',title: '数据录入情况', width: 300 },
  10. { field: 'Operate', title:'操作', width: 300 }
  11. ]]
  12. })
  13. }
 //县市区定量指标计算情况查询
function reloadgridCityQuanty() {
var test =document.getElementById("NodeChild").innerHTML; //于一般处理程序进行交互,同时生成县市区定量表头
$('#dg').datagrid({
url:"CalculateScoreFrameCity.ashx?test=" + test,
columns: [[
{ field: 'TargerName',title: '指标名称', width: 300 },
{ field: 'ConditionInput',title: '数据录入情况', width: 300 },
{ field: 'Operate', title:'操作', width: 300 }
]] })
}

在这里我们需要说下的是,我们需要将我们所有要显示的数据的表头都在这里提前创建好,然后利用js语句进行动态加载.

我们再来看个表头的js代码,和上面的本质上是一样的.

  1. //县市区定性计算情况查询
  2. functionreloadgridCharacterizationCity() {
  3. var test =document.getElementById("NodeChild").innerHTML;
  4. //于一般处理程序进行交互,同时生成县市区定性表头
  5. $('#dg').datagrid({
  6. url:"CalculateScoreFrameCity.ashx?test=" + test,
  7. columns: [[
  8. { field: 'Name', title:'指标名称', width: 225 },
  9. { field: 'ConditionInput',title: '数据录入情况', width: 225 },
  10. { field: 'CalculateInput',title: '计算情况', width: 225 },
  11. { field: 'Operate', title:'操作', width: 225 }
  12. ]]
  13. })
  14. }
           //县市区定性计算情况查询
functionreloadgridCharacterizationCity() {
var test =document.getElementById("NodeChild").innerHTML; //于一般处理程序进行交互,同时生成县市区定性表头
$('#dg').datagrid({
url:"CalculateScoreFrameCity.ashx?test=" + test,
columns: [[
{ field: 'Name', title:'指标名称', width: 225 },
{ field: 'ConditionInput',title: '数据录入情况', width: 225 },
{ field: 'CalculateInput',title: '计算情况', width: 225 },
{ field: 'Operate', title:'操作', width: 225 }
]] }) }

关于一般处理程序的书写与前面两篇文章是一样的,大家可以参考前面一篇的文章.

我们也来看下我们创建的另一个表头的效果

总结

通过本篇文章我们就可以在前台根据我们的需要,来创建我们需要的表头,以此在DataGrid中显示不同的数据.有心的同学可能注意到我们这篇文章显示的数据与前面两篇文章显示的数据不一样,前面文章DataGrid表格中显示的数据是全部来自数据库表,而我们这篇文章中显示的数据不是直接来自数据库的,是我们手动拼接成的,至于具体的实现我们在下一篇文章中进行介绍.

jQuery EasyUI-DataGrid动态加载表头的更多相关文章

  1. jquery easyui datagrid 动态 加载列

    实现方式: 首先根据输入的sql语句获得相关的列名称返回给前台,然后在datagrid中动态加载列,接着根据查询条件(包括sql语句)获取相关的记录返回给前台用于填充datagrid.从而实现类似or ...

  2. EasyUI datagrid 动态加载表头和数据

    首先返回到页面的需要是JSON数据: 第一步: 遍历表头,插入到array中 for (var i = 0; i < jsonObj.title.length; i++) { //把返回的数据封 ...

  3. EasyUI datagrid动态加载json数据

    最近做一个项目,要求是两张张表可能查找出10多种不同的结果集. 如果想只用一个表格就把全部的结果不同的显示出来那么就肯定不同使用固定的字段名字,要通过动态加载后台返回来的数据把它显示出来就必须动态加载 ...

  4. jquery easyui datagrid 远程加载数据----javascript法

    jquery easyui有三种办法生成datagrid(数据网格),本篇专门讨论javascript借助jquey easy ui实现的方式 html部分 <main role="m ...

  5. easyui datagrid 动态加载数据 渲染问题,表格错位问题

    $('#dg').datagrid({ url:'datagrid_data.json', columns:[[ {field:'code',title:'Code',width:100}, {fie ...

  6. jquery easyui datagrid 远程加载数据----把主键渲染为值遇到的问题及解决方案

    起因:数据库中一些字段存的是代表具体值的数字,需要渲染为具体值 monggodb中的字典 mysql中存放的值为:expertin代表教练擅长的搏击技能 jquery easyui中的相关代码如下:用 ...

  7. 【第一篇】说说MVC+EF easyui dataGrid 动态加载分页表格

    首先上javascript的代码 <script type="text/javascript"> $(function () { LoadGrid(); }) //加载 ...

  8. 转 -- MVC+EF easyui dataGrid 动态加载分页表格

    首先上javascript的代码 <script type="text/javascript"> $(function () { LoadGrid(); }) //加载 ...

  9. jquery easyui tree动态加载子节点

    1.前端tree绑定时,使用onBeforeExpand事件:当节点展开时触发加载子节点,自动会向服务端发送请求:url为绑定url,参数为当前节点id this.tree = { method: ' ...

  10. 项目总结—jQuery EasyUI-DataGrid动态加载表头

    http://blog.csdn.net/zwk626542417/article/details/19248747 概要 在前面两篇文章中,我们已经介绍了在jQuery EasyUI-DataGri ...

随机推荐

  1. java synchronized 的原理。

    synchronized的作用大概分为三种: 1.确保多线程互斥的访问多线程代码.2.保证变量的可见性.3.防止指令重排序. 那么synchronized 是如何实现这些功能的. public cla ...

  2. git简单使用总结

    一.git配置 git config 1.git config --global user.name "ken" 配置用户名2.git config --global user.e ...

  3. [USACO09NOV]硬币的游戏A Coin Game

    https://daniu.luogu.org/problemnew/show/P2964 dp[i][j] 表示桌面上还剩i枚硬币时,上一次取走了j个的最大得分 枚举这一次要拿k个,转移到dp[i- ...

  4. pywinauto: 导入时遇到 "TypeError: LoadLibrary() argument 1 must be string, not unicode"

    pywinauto: 导入时遇到 "TypeError: LoadLibrary() argument 1 must be string, not unicode" 经查询, 看到 ...

  5. Web API: Security: Basic Authentication

    原文地址: http://msdn.microsoft.com/en-us/magazine/dn201748.aspx Custom HttpModule code: using System; u ...

  6. [整理]C语言中的static静态对象

    1.说明外部对象(静态外部变量和静态函数)    (1)static 用于说明外部变量或函数,使该对象的作用域限定为被编译原文件的剩余部分,即从对象说明开始到所在源文件的结束部分:    (2)被st ...

  7. 即时新闻展示插件jQuery News Ticker,超级简单!

    有时候我们为了节省页面空间,会在页面明显处放一小条,用来展示比较重要的即时新闻,一般以轮播的形式出现.今天要介绍的jQuery News Ticker插件就是用来实现这个即时新闻展示功能的,效果图如下 ...

  8. POJ 2485 Highways( 最小生成树)

    题目链接 Description The islandnation of Flatopia is perfectly flat. Unfortunately, Flatopia has no publ ...

  9. linux源码安装nginx

    任务目标:源码安装nginx,作为web服务修改配置文件,让配置生效,验证配置 首先要去官网nginx.org下载一个tar包: tar xvf 解包 进入到解包出来的目录,对configure进行配 ...

  10. css3兼容性问题归纳

    Android2.3的overflow问题 在android2.3及以下系统版本的浏览器不支持overflow:scroll / auto,即在页面元素里面的内容如果超过了父元素或祖先元素的高度是无法 ...