esay ui datagrid动态生成列

esay UI datagrid 行点击 编辑 出现 保存跟取消 "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">    "Content-Type" content="text/html; charset=gb2312">  jQuery EasyUI  "stylesheet" type="text/css" href="e 阅读详情

上菜:

前端代码分两步,第一步为获取动态列的列名;第二步为根据列名匹配数据值。

//先获取列数组
		var array =[];//存放columns属性
		var columns=[];//存放列名
		$.ajax({
	        url:'${pageContext.request.contextPath}/clue/getXmlData',//获取动态列的后台地址
	        type:'POST',
	        data:{
	        	xmlName : xmlName //我这里获取的动态列存在XML文件中,所以需要一个配置文件的名称
	        },
	        success:function(data){
			    $(data).each(function(){
			        array.push({field:'',title:'',width:''});
			     });
			     columns.push(array);
			     $(data).each(function(index,el){
				  columns[0][index]['field']= el['word'].toLocaleLowerCase();//列的对象名,用于与数据进行匹配
				  columns[0][index]['title']= el['word'];//列名
				  columns[0][index]['width']= "130";//列宽度
			     });
<span style="white-space:pre">			</span>     //从后台获取动态列的数据
			     $('#checkDataList').datagrid({
				     fit:true,
				     pagination:true,
				     rownumbers:true,
				     url:'${pageContext.request.contextPath}/clue/getOneData?uuId='+uuId +'&xmlName=' +xmlName,
				     singleSelect:true,
				     columns:columns
			     });
		  },
		  error : function(data){
			  alert(data.message);
		  },
		  dataType:'json'
	 });
后台代码:
<span style="white-space:pre">	</span>/**
	 * 获取对应的xml文件,读取xml文件并将文件中的字段转成json对象
	 * @param request
	 * @return
	 * @throws DocumentException 
	 */
	@RequestMapping("getXmlData")
	@ResponseBody
	public JSON getXmlData(HttpServletRequest request) {
		String path = (request.getSession().getServletContext().getRealPath("/")+ "WEB-INF/xmlFile/").replace("\\", "/");
		String xmlName = request.getParameter("xmlName");
		JSON object = null;
		//读取xml模板
		List<XmlData> xmlDatas = null;
		try {
			xmlDatas = readXmlService.getXmlFile(path + xmlName);
			object = JSONArray.fromObject(xmlDatas);
		} catch (DocumentException e) {
			e.printStackTrace();
			Map<String,String> map = new HashMap<>();
			map.put("message", "配置文件可能不存在!");
			object = JSONObject.fromObject(map);
		}
		System.out.println(object.toString());
		return object;
}
XmlData类:

public class XmlData {
	
	public String id;
	
	public String word;
	
	public String wordSize;
	
	public String wordType;
	
	public Integer wordRow;
	
	public String explian;
	
	public String getId() {
		return id;
	}

	public void setId(String id) {
		this.id = id;
	}

	public String getWord() {
		return word;
	}

	public void setWord(String word) {
		this.word = word;
	}

	public String getWordSize() {
		return wordSize;
	}

	public void setWordSize(String wordSize) {
		this.wordSize = wordSize;
	}

	public String getWordType() {
		return wordType;
	}

	public void setWordType(String wordType) {
		this.wordType = wordType;
	}

	public Integer getWordRow() {
		return wordRow;
	}

	public void setWordRow(Integer wordRow) {
		this.wordRow = wordRow;
	}

	public String getExplian() {
		return explian;
	}

	public void setExplian(String explian) {
		this.explian = explian;
	}
	
获取动态列数据:

<span style="white-space:pre">	</span>/**
	 * 查看单个数据
	 * @return
	 * @throws DocumentException 
	 */
	@RequestMapping("getOneData")
	@ResponseBody
	public JSON getOneData(HttpSession httpSession, HttpServletRequest request, HttpServletResponse response) throws DocumentException{
		String path = (request.getSession().getServletContext().getRealPath("/")+ "WEB-INF/xmlFile/").replace("\\", "/");
		String uuid = request.getParameter("uuId");
		String xmlName = request.getParameter("xmlName");
		//读取xml模板
		List<XmlData> xmlDatas = readXmlService.getXmlFile(path + xmlName);
		//json转成object之后的数据
		List<ClueDataWithBLOBs> clueDataWithBLOBs = clueDataService.getClueByuuId(uuid, xmlDatas);
		JSON json = null;
		if(clueDataWithBLOBs.size() > 0){
			List<String> jsons = new ArrayList<>();
			for(ClueDataWithBLOBs object : clueDataWithBLOBs){
				jsons.add(object.getContentJson());//动态列数据在数据库中按照json存储
			}
			json = JSONArray.fromObject(jsons);
			
			
		}
		System.out.println(json.toString());
		return json;
	}

开发需求:

此系统通过动态配置字段,可以对不同字段的EXCEL表格进行导入,动态字段生成的XML配置文件,字段内容在数据库中均已json形式存储在一个字段内(contentJson)。所以通过不同模板上传的excel数据不同,contentjson字段个数、内容均不相同。但是现在系统需要将contentjson字段中不同的json值展现在相同的datagird中,所以才有了datagird动态生成字段的功能。


思路:

先根据XML配置文件生成列,也就是将表格的列画出来。然后将contentjson字段中的json值取出来跟之前的列匹配。

效果图:下图存在两条数据,代表两个上传的EXCEL文件


第一个数据点击,查看数据显示的列内容如下:


第二个数据,列显示的字段内容


esay-ui表格单元格编辑控制 esay-ui表格单元格编辑控制 需求说明: 1. 点击表格行,表格行中指定列进入编辑状态,可以编辑选择 2. 指定表格行中某一列中的某一个单元格的数据不可更改,即不可更改指定列的已有数据,允许更改新增数据 这里表格的Product被设置为不允许修改已有数据,允许修改空数据,ItemID列设置为不允许编辑,其他列可自由编辑。 代码分享 <table id="dg" class="easyui-datagrid" title="Row Editing DataGrid" style=" 阅读详情

相关推荐

easyUI页面datagrid动态列和form字段动态添加

easyUI页面datagrid动态列和form字段动态添加;项目开发时用到的,废了不少事,大概总了一下,现在发出来共享给想我一样的要用到的菜鸟们,谢谢

EsayUI DataGrid 动态列生成

VS2013+Web MVC + EasyUI 控件库,动态列动态数据生成

single209的专栏 2290

搭建PX4开发系统(Ubuntu 22.04)

本文是《从零开始学 PX4 无人机开发》系列第二篇,适合开发者在 Ubuntu 系统下快速搭建 PX4 编译与仿真环境,支持 QGroundControl、Gazebo、MAVSDK 等完整工具链。

qq_15856721的博客 4195

easyui之datagrid:动态生成列(动态报表)

我们都知道,使用easyui可以很容易的生成datagrid,代码如下: _queryGrid = $("#datagrid_queryReport").datagrid({ url:urljson, queryParams:parData, fitColumns:true, width:$(window).width() - 5, height:$(window).heig

赶路人儿 6066

DC-DC 转换器中的压电谐振器:当前状态和限制

在功率转换器应用中,居里温度较低的谐振器的 k 2和 Q M显着降低会导致效率降低,需要仔细的热处理。由于使用 PR 的功率转换器在不同的条件下运行,包括温度范围、电压偏置和功率电平,因此不可避免地会出现非线性效应,必须妥善解决这一问题,以免影响转换器的性能。等效电路模型(Butterworth Van-Dyke 或 BVD 模型)将压电谐振器在其机械谐振附近的电响应转换为一个简单电路,该电路由与由电极形成的输入电容 C 0并联的串联 RLC 动分支组成,见图图 1 还显示了阻抗与频率的关系。

2301_79716471的博客 1294

AI驱动的研发流程:定义高度专业和系统化的规划基准

在人工智能(AI)浪潮席卷全球的今天,软件研发的范式正经历着一场深刻而迅速的变革。AI技术的渗透,从最初的辅助工具角色,正逐步演变为驱动整个研发流程的核心引擎。传统的研发流程和项目管理方法论,在面对AI带来的高效率、高智能以及高复杂性挑战时,显得力不从心。企业对快速交付高质量软件产品、有效控制风险、并保证全流程可追溯性的需求日益迫切。

形上得其象,形下合于数;阴阳自济,玄理自明。 2181

EasyUI Datagrid 数据网格,动态生成table,合计一列数据

EasyUI Datagrid 数据网格,动态生成table,合计一列数据

weixin_53987328的博客 1158

使用LSTM实现自动调制识别(RML2018.01a)

目录一、LSTM的代码实现1.1 导入包1.2 数据读取及数据集划分1.3 数据预处理1.4 构建LSTM模型 本文基于RML2018.01a大型数据集,给出LSTM的信号识别的实现方式(附代码) RML2018.01a数据集信息如下: 模型 传送门 CNN/ResNet 使用CNN/ResNet实现自动调制识别(RML2018.01a) LSTM 使用LSTM实现自动调制识别(RML2018.01a)) 一、LSTM的代码实现 1.1 导入包 import numpy as np

QAQIknow的博客 6121

jquery esay ui 的表格控件使用

jquery esay ui 的表格控件使用 JQuery EasyUI的datagrid的使用方式总结 第一步:添加样式和js脚本在前台添加展示数据表格的table元素 例如: <div> <table id="tt" style="width: 700px;" title="标题,可以使用代码进行初始化,也可以使用这种属性的...

232

GRSL 2026 即插即用 | Transformer篇 | DCSA:动态稀疏门控自注意力,兼顾长距离依赖与局部细节表达!

SDANet整体架构和模块Dynamic Channel Sparse Attention (DCSA):DCSA为Transformer块中的自注意力层。DCSA架构:样本级动态稀疏注意力:首次实现每个样本独立预测注意力稀疏度:通过轻量门控网络根据输入特征的复杂度自适应调整保留的通道数,简单样本使用更高稀疏度(如保留 20% 通道),复杂样本使用更低稀疏度(如保留 80% 通道),在保证精度的前提下平均计算量降低 50% 以上。

主要更新底层视觉(去噪、超分等)相关的科研内容,形式为【论文精读】+【论文复现】 107

ABAP 百科全书的阅读目录(2024版)

909 篇 ABAP 技术文章的目录

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 4241

Jquery esay ui datagrid formatter属性简单使用

//初始化数据 function initDataGrid({ url:'/test/test_findTestTypeByParametes.action',   columns: [[ {field:'testId', checkbox:true }, {field:'testName', title:'测试名称', width:200, formatter:formatTestSt

梅路艾姆 979

化工设备设计软件:PVELITE二次开发_(12).数据导入导出与兼容性

在数据导入之前,需要定义数据在PVELITE中的结构。可以通过编程接口定义字段名称和数据类型。# 导入必要的库 import pvelite # 创建PVELITE实例 pve = pvelite . PVELITE() # 定义CSV数据结构 csv_structure = {

kkchenjj的博客 1212

easyui DataGrid表体单元格跨列rowspan

最近做项目用到了jquery easyui,其中一组DataGrid做的报表是给客户大领导看的,客户要求报表样式跟他们原有系统的一模一样(如下图1)。 DataGrid样式好调,只是城市名称单元格跨行这个难度稍大,本着用户体验无尺度的用户价值观,无尺度的修改了easyui源代码 图1 – “城市”和“名称”列跨行的处理效果 一、分析准备: 1、jquery版本:1.8.0;ea...

weixin_30823001的博客 681

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

JQuery Easy Ui dataGrid 数据表格 此文章解决easy ui 足矣

JQuery Easy Ui dataGrid 数据表格 使用方法(Usage Example) 从现有的表单元素创建数据表格,定义在html中的行,列和数据。 table class="easyui-datagrid">       thead>           tr>               th data-options="field:'code'">

信心比天才重要 3313

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

jQuery Easyui datagrid对可编辑列的级联操作 ..

为什么80%的码农都做不了架构师?>>> ...

weixin_34209406的博客 181

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

解决Jquery esay-ui datagrid 中checkbox出现重复的问题

转载于:https://my.oschina.net/meiluaimu/blog/120905

chensanpeng8925的博客 179

30EasyUI 数据网格- 创建列组合

easyui 的数据网格(DataGrid)可以创建列组合,如下所示: 在本实例中,我们使用平面数据来填充数据网格(DataGrid)的数据,并把 listprice、unitcost、addr1、status 列组合在一个单一的列下。 为了创建列组合,您应该定义数据网格(datagrid)插件的 columns 数据。列的每个元素是定义一组可使用 rowspan 或 colspan 属性来进行...

阿甘兄 681

esay-ui学习笔记(一)

JavaScript prototype用法 prototype 属性使您有能力向对象添加属性和方法。 object.prototype.name=value <script type="text/javascript"> function employee(name,job,born) { this.name=name; this.job=job; th...

weixin_30284355的博客 109

JQuery Easy Ui dataGrid 数据表格

http://www.cnblogs.com/cnjava/archive/2013/01/21/2869876.html 数据表格 - DataGrid 内容 概况  使用方法  数据表格属性  数据列属性  编辑  数据视图  事件  方法  继承$.fn.panel.defaults,使用$.fn.datagrid.defaults重载默认值。. 数据...

weixin_34195142的博客 108

EasyUI datagrid 生成气泡文

      同样是项目中用到的,EasyUI 的datagrid在生成列表的时候,有的列数据可能宽度设置不够,会显示不全, 当鼠标放到这一列的所属行的时候,会显示出气泡文,将文字全部显示出来。          废话不多说,上代码:        tiptool.js       /** * Created with JetBrains WebStorm. * Date: 13-6-2...

喝拉菲的猫 736

ASP.NET MVC使用EasyUI的datagrid多选提交保存教程

需要实现EasyUI的datagrid组件加入选择checkbox列,并提交后台批量添加的功能,页面代码如下: [js] <script language="javascript" type="text/javascript"> $(function() { //searchbox $('#selectgoods-keywor...

229

mvc中使用easyui-datagrid

mvc中使用easyui-datagrid

Sandy专栏 6046
上一篇: 通过js动态生成对象,并给对象赋值
下一篇: jquery mobile radio的使用
钢镚爸爸
博客等级 码龄16年 7粉丝 14原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值