JS给填报控件(单元格)赋值

编辑
  • 文档创建者:印然
  • 浏览次数:17139次
  • 编辑次数:10次
  • 最近更新:Kevin-s 于 2019-06-23
  • 1. 描述

    如下图填报表中,编辑完一个控件的值后,动态地给其他单元格或其他控件赋值。



    2. 思路

    在控件的编辑结束事件中通过 JS 动态地给单元格或其他控件赋值。

    不管是单元格还是控件,都是用 contentPane.setCellValue([reportIndex], columnIndex, rowIndex, cv);或者contentPane.setCellValue("单元格",null, cv);来赋值。

    reportIndex 指定单元格或控件所在的sheet,从 0 开始。

    columnIndex 指定单元格或控件所在的列,从 0 开始。

    rowIndex 指定单元格或控件所在的行,从 0 开始。

    cv 表示需要赋给单元格或控件的值。

    示例:

    contentPane.setCellValue(1,2,3,"abc");表示给 sheet2 的第 3 列第 4 行即单元格 C4 赋值 abc。


    3. 操作步骤

    1)报表设计如下:


    2)选中姓名控件,添加编辑后事件


    JS 代码如下:

    var a = this.getValue();
    contentPane.setCellValue(0,0,a+"个人信息登记表");
    contentPane.setCellValue("B3",null,"女");

    这样就实现了编辑完一个控件后,动态地给其他单元格或控件赋值,可以赋固定值,也可以将当前控件值赋过去,该例中的文本框控件也可以换成其他控件类型。

    注:在 702 版本以及 702 之前的版本,如果使用到 contentPane.curLGp.setCellValue(cell,null,cv)给单元格或控件赋值,需要修改成 contentPane.setCellValue()的方式来赋值,否则在提交的时候不会入库,即contentPane.curLGp.setCellValue(cell,null,cv)是赋显示值,而非实际值


    4. 预览效果

    4.1 PC 端预览效果



    4.2 移动端预览效果

    支持坐标赋值contentPane.setCellValue([reportIndex], columnIndex, rowIndex, cv)

    不支持单元格赋值contentPane.setCellValue("单元格",null, cv)



    5. 已完成模板

    模板效果在线查看请点击:JS 给填报控件(单元格)赋值.cpt

    已完成的模板,可参见:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\JS\填报预览JS实例\47-JS给填报控件(单元格)赋值.cpt

    点击下载模板


    附件列表


    主题: 二次开发
    标签: 暂无标签 编辑/添加标签
    如果您认为本文档还有待完善,请编辑

    文档内容仅供参考,如果你需要获取更多帮助,付费/准付费客户请咨询帆软技术支持
    关于技术问题,您还可以前往帆软社区,点击顶部搜索框旁边的提问按钮
    若您还有其他非技术类问题,可以联系帆软传说哥(qq:1745114201

    此页面有帮助吗?只是浏览 [ 去社区提问 ]