V2018 填报表 js 获取单元格值

 

普通填报表获取单元格值的方法

固定填报表可以根据单元格 id 获取固定单元格定义,然后获取值
核心代码

String sgid="";
sgid = InputTag.getInputId();
var cell =_getInputCell("<%=sgid%>","A5",0);
var zhi=cell.getAttribute("value");

修改单元格值

_getInputCell("<%=sgid%>","A5",0).innerHTML = "新值"

核心函数说明

_getInputCell(groupId, cellName, sheetIndex, baseCell)
功能:获取填报表组中的单元格对象
参数含义:
groupId: jsp 中发布填报表组时的 id
cellName: 要获取的单元格的名称,如 A1、B2 等
sheetIndex:要获取的单元格所在的 sheet 的序号,从 0 开始。为 null 时表示取当前 sheet
baseCell: 基准单元格对象,指定要获取的单元格与它是同一行。为 null 时表示与当前 sheet 的当前单元格同一行,如果没有选择当前单元格,则此函数返回第一个名叫 cellName 的单元格

行式填报表获取单元格值的方法

行式填报获取到的是一个扩展字段的序列
核心代码如下:

var objs = _lookupCells(groupId + sheetIndex + "_" + cellName);//获取行式填报中某列的值
objs.length//获取扩展个数
objs[0].getAttribute("value")//获取某行的值

lookupCells 函数的参数说明:
第一个参数对应 sgid 的值
第二个参数值写 0 就行,对应第几个 sheet
第三个是单元格

知道如何获取行式填报单元格值的方法之后,就可以自定义 js 实现重复性校验