历史版本11 :JS 获取单元格字符串中的数字 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

 1. 概述编辑

1.1 预期效果

制作填报报表时,需要动态提取字符串中的数字,如下图所示:

1.gif

1.2 实现思路

通过给文本框控件添加编辑结束事件实现。接口说明可以参考:API接口汇总

2. 示例编辑

2.1 报表设计

1)新建内置数据集 Embedded1,如下图所示:

1583733644187783.png

2)如下图设计表格,A2 单元格添加文本框控件。

3)选中 A2 单元格,添加一个编辑结束事件,需要新增参数row,其值为公式row(),如下图所示:

JavaScript 代码如下:

注:代码中用正则表达式匹配数字,实际应用时,若匹配其他内容,请替换为适合的正则表达式。

var str = this.getValue();
//获取当前文本控件值
var num = str.replace(/[^0-9]/ig, "");
//使用正则表达式提取数字
_g().setCellValue(1, row-1, num);
//将数字赋值给B2单元格

2.2 效果预览

保存报表,填报预览后,修改文本框值后即可获取当前行字符串中的数字,如下图所示:

1.gif

3. 模板下载编辑

已完成模板可参见:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\JS\填报预览JS实例\JS获取单元格字符串中的数字.cpt

点击下载模板:JS获取单元格字符串中的数字.cpt