反馈已提交

网络繁忙

JS 获取单元格字符串中的数字

  • 文档创建者:L大大
  • 编辑次数:14次
  • 最近更新:Leo.Tsai 于 2022-08-22
  •  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

    附件列表


    主题: 填报应用
    • 有帮助
    • 没帮助
    • 只是浏览

    售前咨询电话

    400-811-8890转1

    在线技术支持

    在线QQ:800049425

    热线电话:400-811-8890转2

    总裁办24H投诉

    热线电话:173-1278-1526

    文 档反 馈

    鼠标选中内容,快速反馈问题

    鼠标选中存在疑惑的内容,即可快速反馈问题,我们将会跟进处理。

    不再提示

    10s后关闭