时间:2021-05-26
一、需求:有这么一张表
前四个属性当作联合主键
需要把该表所有的行在前端以表格形式显示出来,要求activityId相同时合并成一行,activityCode相同时,合并一行,activityVersion相同时也合并一行。类似这种:
二、初解决:先上来把数据库的数据查询出来,以List<Activity> activities保存,再存到json对象中传回页面。像这样json.put("activities",activities);
到js页面了,然后就开始蒙蔽了。本来jqeury就小白,遇到这种情况就更没办法了。
三、问大牛:大牛给我提供了两种思路:我的理解是遇到这种情况可以先把数据在后台封装成你需要的数据结构,在传到前台,就会很好处理。
第一种:构造Map:Map<String,Map<String,List<Activity>>>
第二中:构造List:这种需要封装出新的java对象.形如:List<ActivityCode>.
对象ActivityCode有List<ActivityVersion>这个属性,对象ActivityVersion有属性List<Activity>
我用的是第一种:首先转换数据结构:
public static Map<String, Map<String, List<Activity>>> listToMap( List<Activity> activities) { Map<String, Map<String, List<Activity>>> map = new HashMap<String, Map<String, List<Activity>>>(); for (Activity detail : activities) { if (!map.containsKey(detail.getActivityCode())) { Map<String, List<Activity>> mapValue = new HashMap<String, List<Activity>>(); List<Activity> listValue = new ArrayList<Activity>(); listValue.add(detail); mapValue.put(detail.getActivityVersion(), listValue); map.put(detail.getActivityCode(), mapValue); } else { Map<String, List<Activity>> mapValue = map.get(detail .getActivityCode()); if (!mapValue.containsKey(detail.getActivityVersion())) { List<Activity> listValue = new ArrayList<Activity>(); listValue.add(detail); mapValue.put(detail.getActivityVersion(), listValue); } else { List<Activity> mapValueList = mapValue.get(detail .getActivityVersion()); mapValueList.add(detail); mapValue.put(detail.getActivityVersion(), mapValueList); } } } return map; }然后就jQuery遍历map就好了
以上所述是小编给大家介绍的jQuery动态生成不规则表格(前后端),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
JQuery动态生成Table表格主要用到了JQuery中的append和appendto的方法,具体代码如下:动态创建表格functionCreateTabl
本文实例介绍了JS实现动态生成表格并向后端提交表格数据的相关代码,分享给大家供大家参考,具体内容如下先来看一下需求:在web页面上动态的生成表格,并可以对表格中
用JS生成动态生成表格,行、列由用户输入,并使表格隔行换色方法一.代码:动态表格functioncreateTable(){vartable=document.
一、用css+div,就要放弃以前表格排版的一些习惯,包括页面格式的一些习惯:1.以前用表格排版,一般都是用不规则的背景图片,跨单元格来做一些不规则的效果.cs
jeeplus是一款基于代码生成器的快速开发平台。前后端分离、maven多模块开发,方便多人协同开发后端选型:springboot2+mybatis+shiro