动态列表

以demo中“订单(动态列表)”为例说明:此列表显示的信息包括订单主表的信息和订单子表的信息,其中主表信息是编号为ES_ORDER对应列表的信息,子表的信息是从后台动态取得:

1.列表标签中需增加属性dynamicColumn=””;

<grid:jqGrid gridId="dynamicOrder" url="${ctx}/order/dynamic-order.htm" code="ES_ORDER" pageName="dynamicPage" dynamicColumn="${dynamicColumn}"></grid:jqGrid>

在action中定义变量与其对应:

private List<DynamicColumnDefinition> dynamicColumn=new ArrayList<DynamicColumnDefinition>();

2.进入列表页面时后台action调用方法packagingDynamicColumn(),将动态列表追加的表头信息添加进去,追加子表的表头信息是子表中的某个字段,如下方法:

private void packagingDynamicColumn() throws Exception {

//取得子表字段产品名称,以此字段作为表头

List<Object> productNames=orderManager.getOrderItem();

for(int i=0;i<productNames.size();i++){

// "productName"+i是动态列表中每一列的的id

DynamicColumnDefinition dynamicColumnDefinition=new DynamicColumnDefinition(productNames.get(i)

.toString(),"productName"+i);

//是否可编辑

dynamicColumnDefinition.setEditable(true);

//设置数据类型

dynamicColumnDefinition.setType(DataType.INTEGER);

//设置编辑规则

dynamicColumnDefinition.setEditRules("required:true");

//设置是否合计

dynamicColumnDefinition.setIsTotal(true);

//是否导出true表示导出,false表示不导出,默认为true

dynamicColumnDefinition.setExportable(false);

//是否显示true表示显示,false表示不显示,默认为true

dynamicColumnDefinition.setVisible(false);

//列宽

dynamicColumnDefinition.setColWidth("100");

//编辑时为下拉选

dynamicColumnDefinition.setEdittype(EditControlType.SELECT);

dynamicColumnDefinition.setEditoptions("1:'启用',2:'禁用'");

///编辑时为下拉选时的chang事件

dynamicColumnDefinition.setEventType(EventType.ONCHANGE);

//编辑时给input框增加点击事件

dynamicColumnDefinition.setEventType(EventType.ONCLICK);

//编辑时增加默认值CURRENT_USER_NAME表示当前用户名、CURRENT_LOGIN_NAME表示当前登录名、CURRENT_TIME表示当前时间(yyyy-MM-dd hh:mm:ss)、CURRENT_DATE表示日期(yyyy-MM-dd)dynamicColumnDefinition.setDefaultValue(DefaultValue.CURRENT_USER_NAME); dynamicColumnDefinition.setDefaultValue(DefaultValue.CURRENT_LOGIN_NAME); dynamicColumnDefinition.setDefaultValue(DefaultValue.CURRENT_TIME);

dynamicColumnDefinition.setDefaultValue(DefaultValue.CURRENT_DATE);

dynamicColumn.add(dynamicColumnDefinition);

}

}

上述方法中dynamicColumnDefinition的属性根据需求设定,很多是不需要设定的;

  1. 标签中取列表数据在后台需调用下面方法:

@Action("dynamic-order")

public String getDynamicOrder() throws Exception {

dynamicPage=orderManager.search(dynamicPage);

this.renderText(PageUtils.dynamicPageToJson(dynamicPage,new DynamicColumnValues(){

public void addValuesTo(List<Map<String, Object>> result) {

Map<String,DynamicColumnDefinition> dynamicColumnName=mmsUtil.getDynamicColumnName();

//取动态列表的列的id

Set<String> productNames=dynamicColumnName.keySet();

for(Map<String, Object> map:result){

Long orderId=Long.valueOf(map.get("id").toString());

for(String productName:productNames){

DynamicColumnDefinition productValue=dynamicColumnName.get(productName);

//在子表的字段中设置值,这里取的是产品数量

map.put(productName.toString(), orderManager.getProductAmount(productValue.getColName(),orderId));

}

}

}

}));

return null;

}

说明:page转json需要调dynamicPageToJson;

result是主表取出来的每一条数据。

关于标签更详细的资料可以到官网下载:http://www.imatrix.net.cn

如有使用iMatrix平台问题请登录iMatrix平台论坛咨询:

http://bbs.imatrix.net.cn/forum.php?mod=forumdisplay&fid=37

或者加入QQ群307599527

转载于:https://www.cnblogs.com/gril/p/3716083.html

如何设置iMatrix平台中列表标签(gridjqGrid)实现动态列表相关推荐

  1. html基础--列表标签03,03HTML基础--列表标签

    列表标签 无序列表(unordered list)作用: 给一堆内容添加无序列表语义(一个没有先后顺序整体), 列表中的条目是不分先后 格式:li 英文是 list item, 翻译为列表项 选择居住 ...

  2. html里有序列表标签怎么表示,HTML——列表标签

    什么是列表? 把-制成表,以表显示. 容器里面装载着文字或图表的一种形式,叫列表. 列表最大的特点就是 整齐 .整洁. 有序. 无序列表 ul (重点) 无序列表的各个列表项之间没有顺序级别之分,是并 ...

  3. vue 给iframe设置src_vue项目中,iframe的src动态赋值

    可以类似这样: /** * 动态创建iframe * @param dom 创建iframe的容器,即在dom中创建iframe.dom能够是div.span或者其它标签. * @param src ...

  4. 在html中定义有序列表的标签为,HTML列表标签

    表格是用来展示数据的,那么列表就是用来布局的 列表的最大特点是整齐整洁有序,他作为布局是非常自由和方便. 分类:无序列表 有序列表 自定义列表 1.无序列表(最重要) 标签表示HTML页面中项目的无序 ...

  5. html中的列表标签

    目录 列表标签 什么是列表标签? 答:可以用来表示一组一组的内容,页面中相同结构.或相同意义都可以用列表 列表标签可以分为有序列表.无序列表.定义列表. 1.有序列表  用ol创建 ,li标签表示列表 ...

  6. Web前端开发笔记——第二章 HTML语言 第六节 区域标签、列表标签

    目录 一.区域标签 (一)div标签的定义 (二)div标签的属性 二.列表标签 (一)列表标签的定义 (二)列表标签的类型 1.有序列表 (1)有序列表的定义 (2)有序列表的属性 2.无序列表 ( ...

  7. 从零开始学前端:列表标签 --- 今天你学习了吗?(CSS:Day06)

    从零开始学前端:程序猿小白也可以完全掌握!-今天你学习了吗?(CSS) 复习:从零开始学前端:表单制作 - 今天你学习了吗?(CSS:Day05) 文章目录 从零开始学前端:程序猿小白也可以完全掌握! ...

  8. 03-body标签中相关标签

    今日主要内容: 列表标签 <ul>.<ol>.<dl> 表格标签 <table> 表单标签 <fom> 一.列表标签 列表标签分为三种. & ...

  9. HTML标签-排版标签、媒体标签、列表标签、表格标签、表单标签、语义化标签、字符实体

    一.排版标签 1.标题标签 在新闻和文章的页面中都离不开标题,用来突出显示文章主题. h系列标题 <body><h1>1级标题</h1> <h2>2级标 ...

最新文章

  1. pytorch中的torch.tensor.repeat以及torch.tensor.expand用法
  2. 华为程序员频交Linux内核补丁遭质疑,管理员后续回应:承认贡献,但请不要琐碎提交...
  3. python anova_anova_lm()python:它适用于哪种模型类型?
  4. java 计算小费_java-以某些形状显示数字
  5. js 常用js正则表达式大全
  6. android的ListView做表格添加圆角边框
  7. 字节跳动算法工程师总结:java自学路线及推荐书籍
  8. ftp服务器通常提供文件上传和,基于FTPClient的文件上传至Nginx服务器
  9. STM32CubeMX使用(四)之DMA方式使用ADC
  10. ES6+webpack实现Counter
  11. HDOJ 1251 HDU 1251 统计难题 ACM 1251 IN HDU
  12. win10系统安装提示带有gui的服务器,安装win10提示“由于技术员系统中无接入音频设备,要启动GUI”如何...
  13. Houdini 笔记2
  14. 面部表情识别---学习笔记
  15. 数学基础 - 第十七章 勾股定理
  16. java通过POI快速读取excel大量数据的方式
  17. 计算机二级office的考试内容,计算机二级office考试内容有啥
  18. c语言程序设计例案教程,C语言程序设计案例教程
  19. AIoT(人工智能+物联网)知识总结+实战项目
  20. 软件开发怎么对抗抄袭_对抗软件开发中的复杂性

热门文章

  1. 遥感影像场景分类预测大赛——算法硬碰硬!
  2. 谷歌大脑提出EfficientNet平衡模型扩展三个维度,取得精度-效率的最大化!
  3. 民办大学计算机专业教师,干货!民办大学和独立院校教师创新排行榜,这五个高校最亮眼...
  4. 3详细参数_大疆精灵3值得入手吗?最详细的实测体验,各种参数应有尽有!
  5. 太神奇!2张关键帧,AI生成完整运动过程!
  6. 清华大学团队夺冠AAAI 2021国际深度元学习挑战赛
  7. 收藏 | OpenCV新手入门预处理
  8. 【Python】Python实战从入门到精通之六 -- 教你读取文件
  9. 《Python编程从入门到实践》记录之求模运算符
  10. python 监控linux硬盘,Python3监控windows,linux系统的CPU、硬盘、内存使用率和各个端口的开启情况详细代码实例...