JS获取填报扩展单元格控件的值

楼主
我是社区第485122位番薯,欢迎点我头像关注我哦~
1. 概述
1.1 问题描述

场景描述:填报预览时,我们想获取到某个控件的值相对来说较容易。但如果控件是扩展的,就只能获取到第一个值,无法根据扩展一行行获取对应的值。

例:本意是想获取到袁成洁,结果还是获取到第一个单元格值孙林。而实际我们应该获取到的单元格是袁成洁。现在我们以此为例,作为操作方法。


1.2 实现思路

我们可以通过 JS 事件来获取对应行控件的值。

2. 示例
2.1 操作步骤

新建一个模板,添加数据集 ds1:SELECT * FROM 销量

把销售员字段拖入到 A1 单元格,A1 单元格设置下拉框控件,B1单元格设置按钮控件,下拉框控件是向下扩展的,模板设计如下图所示:



给B1 单元格按钮控件添加一个 JS 点击事件:

JS 代码如下:

  1. var location = this.options.location;  //获取当前控件的位置
  2. var cr = FR.cellStr2ColumnRow(location);
  3. var col = cr.col;  //列号
  4. var ro = cr.row;  //行号
  5. var zybck = contentPane.getWidgetByCell(FR.columnRow2CellStr({col: col-1, row: ro}));
  6. //根据单元格获取控件
  7. alert(zybck.getValue());  //获取对应的值
复制代码

2.2 预览效果

保存后,点击填报预览,点击按钮,效果如下图所示:

注:经过测试,手机端和 H5 不支持该效果。

3. 模板下载

模板效果在线查看请点击:JS 获取填报扩展单元格控件的值.cpt

已完成的模板,可参见:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\JS\填报预览JS实例\06-JS获取填报扩展单元格控件的值.cpt

点击下载模板 :06-JS获取填报扩展单元格控件的值.cpt




编辑于 2020-11-24 13:45  

编辑于 2020-11-24 13:46  
分享扩散:

沙发
发表于 2021-9-10 16:47:40
请问怎么将值获取到单元格中
板凳
发表于 2024-9-25 11:58:43
扩展图表的超链接点击事件中写var location = this.options.location;  //获取当前控件的位置会报错;CustomJSError : Cannot read properties of undefined (reading 'location')
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

返回顶部 返回列表