jQuery EasyUI-DataGrid动态加载表头
项目总结—jQuery EasyUI-DataGrid动态加载表头
概要
在前面两篇文章中,我们已经介绍了在jQuery EasyUI-DataGrid中有参数和无参数的情况下将数据库中数据显示到前台,但是对于前面两篇文章显示的数据表头是固定的,如果我们显示到前台的数据来自数据库不同的表,那么表头也需要动态的加载,这篇文章我们就来看下在EasyUI-DataGrid中动态加载表头和数据.
实现
我们要实现的功能是根据我们的需要,让DataGrid显示不同的数据,表头也同样在变,我们可以先看下我们要实现功能的页面.
如图所示我们点击左侧不同的节点,右侧将会显示不同DataGrid的数据.
现在我们来看下前台html页的代码,因为表头是变的,所以我们的前台代码跟前面两篇博客就有点不一样了.
- <divdata-optionsdivdata-options="region:'center',title:'考核对象数据录入情况',iconCls:'icon-ok'">
- <divclassdivclass="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>
<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代码生成表头的代码,如图所示的县市区定量的表头.
- //县市区定量指标计算情况查询
- 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 }
- ]]
- })
- }
//县市区定量指标计算情况查询
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代码,和上面的本质上是一样的.
- //县市区定性计算情况查询
- 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 }
- ]]
- })
- }
//县市区定性计算情况查询
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动态加载表头的更多相关文章
- jquery easyui datagrid 动态 加载列
实现方式: 首先根据输入的sql语句获得相关的列名称返回给前台,然后在datagrid中动态加载列,接着根据查询条件(包括sql语句)获取相关的记录返回给前台用于填充datagrid.从而实现类似or ...
- EasyUI datagrid 动态加载表头和数据
首先返回到页面的需要是JSON数据: 第一步: 遍历表头,插入到array中 for (var i = 0; i < jsonObj.title.length; i++) { //把返回的数据封 ...
- EasyUI datagrid动态加载json数据
最近做一个项目,要求是两张张表可能查找出10多种不同的结果集. 如果想只用一个表格就把全部的结果不同的显示出来那么就肯定不同使用固定的字段名字,要通过动态加载后台返回来的数据把它显示出来就必须动态加载 ...
- jquery easyui datagrid 远程加载数据----javascript法
jquery easyui有三种办法生成datagrid(数据网格),本篇专门讨论javascript借助jquey easy ui实现的方式 html部分 <main role="m ...
- easyui datagrid 动态加载数据 渲染问题,表格错位问题
$('#dg').datagrid({ url:'datagrid_data.json', columns:[[ {field:'code',title:'Code',width:100}, {fie ...
- jquery easyui datagrid 远程加载数据----把主键渲染为值遇到的问题及解决方案
起因:数据库中一些字段存的是代表具体值的数字,需要渲染为具体值 monggodb中的字典 mysql中存放的值为:expertin代表教练擅长的搏击技能 jquery easyui中的相关代码如下:用 ...
- 【第一篇】说说MVC+EF easyui dataGrid 动态加载分页表格
首先上javascript的代码 <script type="text/javascript"> $(function () { LoadGrid(); }) //加载 ...
- 转 -- MVC+EF easyui dataGrid 动态加载分页表格
首先上javascript的代码 <script type="text/javascript"> $(function () { LoadGrid(); }) //加载 ...
- jquery easyui tree动态加载子节点
1.前端tree绑定时,使用onBeforeExpand事件:当节点展开时触发加载子节点,自动会向服务端发送请求:url为绑定url,参数为当前节点id this.tree = { method: ' ...
- 项目总结—jQuery EasyUI-DataGrid动态加载表头
http://blog.csdn.net/zwk626542417/article/details/19248747 概要 在前面两篇文章中,我们已经介绍了在jQuery EasyUI-DataGri ...
随机推荐
- HDU 3790 最短路径问题 (最短路)
题目链接 Problem Description 给你n个点,m条无向边,每条边都有长度d和花费p,给你起点s终点t,要求输出起点到终点的最短距离及其花费,如果最短距离有多条路线,则输出花费最少的. ...
- 面试:----Nginx的一理解
1.静态HTTP服务器 首先,Nginx是一个HTTP服务器,可以将服务器上的静态文件(如HTML.图片)通过HTTP协议展现给客户端. 配置: 2.反向代理服务器 什么是反向代理? 客户端本来可以直 ...
- CodeForces 724G: Xor-matic Number of the Graph
题目传送门:CF724G. 题意简述: 一张 \(n\) 个点的无向图,边有边权. 定义三元组 \((u,v,w)(1\le u < v\le n)\) 合法当且仅当存在从点 \(u\) 到点 ...
- go 数组
数组的定义和 初始化 数组是同一类型的元素集合 ]int //定义⼀个数组 Go中数组下标从0开始,因此长度为n的数组下标范围:[0,n-1] 整数数组中的元素默认初始化为0,字符串数组中的元素默认初 ...
- linux音频alsa-uda134x驱动文档阅读之一转自http://blog.csdn.net/wantianpei/article/details/7817293
前言 目前,linux系统常用的音频驱动有两种形式:alsa oss alsa:现在是linux下音频驱动的主要形式,与简单的oss兼容.oss:过去的形式而我们板子上的uda1341用的就是alsa ...
- BZOJ4840 NEERC2016 Binary Code
Problem BZOJ Solution 可能是因为快要省选了,所以最近更博的频率好像高了点_(:зゝ∠)_ 每个字符串最多有两个状态,然后要满足一些依赖关系,考虑2sat.可以先把字符串的结束节点 ...
- 【转】WCF光芒下的Web Service
WCF光芒下的Web Service 学习.NET的开发人员,在WCF的光芒照耀下,Web Service 似乎快要被人遗忘了.因为身边做技术的人一开口就是WCF多么的牛逼!废话不多,本人很久不写博客 ...
- django Rest Framework----APIView 执行流程 APIView 源码分析
在django—CBV源码分析中,我们是分析的from django.views import View下的执行流程,这篇博客我们介绍django Rest Framework下的APIView的源码 ...
- ADB常用命令(二)
参考 http://adbshell.com/commands 常用命令 查看adb 版本 adb version 打印所有附加模拟器/设备的列表 adb devices 设备序列号 adb get ...
- 基于vue配置axios
转载地址:https://juejin.im/post/5a02a898f265da43052e0c85 1.背景 在项目开发中ajax请求是必不可缺少 一部分ajax请求不需要loading或则请求 ...