有谁知道JS内怎么写显示列的代码吗?

因为填报报表内条件属性只对提交入库的数据值有用,对未提交入库的数据是没有用的。

现在  我的填报报表内,A4是填报下拉框控件, 然后我的B4是填报文本控件。c4是填报日期控件,d4是填报数字控件。

我现在想实现的就是,

当我A4的值被选择为 "AAA"时,显示我的B4列,

A4的值被选择为 "bbb"时,显示我的c4列,

A4的值被选择为 "CCC"时,显示我的d4列。

我这边搜了文档,但是我没搜到显示列的JS怎么写。

有谁知道吗T-T

FineReport JavaScript lku 发布于 2022-11-3 15:08 (编辑于 2022-11-3 15:51)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共4回答
最佳回答
0
CD20160914Lv8专家互助
发布于2023-5-15 20:52

js就类似这样就行了

image.png

var bl=this.value;

var location = this.options.location;  //获取当前控件的位置得到一个单元格的地址

var cr = FR.cellStr2ColumnRow(location);//把单元格地址传入后就得到一个控件对象了

var col = cr.col;  //获取控件对象的列号

var ro = cr.row;  //获取控件对象的行号

var c= contentPane.getWidgetByCell(FR.columnRow2CellStr({col: col+1, row: ro}));//获取它后面一列控件对象

var c2= contentPane.getWidgetByCell(FR.columnRow2CellStr({col: col+2, row: ro}));//获取它后面第二列控件对象

var c3= contentPane.getWidgetByCell(FR.columnRow2CellStr({col: col+3, row: ro}));//获取它后面第3列控件对象

if(bl=="aaa"){

alert(c.getValue());

}

else if (bl=="bbb"){

alert(c2.getValue());

}

else {

alert(c3.getValue());

}

image.png

最佳回答
0
luojian0323Lv7资深互助
发布于2022-11-3 15:11(编辑于 2022-11-3 15:12)

B4 B5 不都是B列吗?

填报动态隐藏行:

https://help.fanruan.com/finereport/doc-view-4853.html?source=4

  • lku lku(提问者) 打错了。。是c和D。不同的列
    2022-11-03 15:31 
最佳回答
0
Z4u3z1Lv6专家互助
发布于2022-11-3 15:12

那么当你增加足够多行,a4选的把AAA\BBB\CCC都选了呢?

控件值决定其它控件是否可用.zip

还倒不如由A4决定其它控件是否可用

  • lku lku(提问者) 很感谢!! 但是 这样子前端会显示多列 ,只是做了是否可用的判断。我想前端根据A4去做联动,根据A4的值去做判断,不同的选项出现对应的列。
    2022-11-03 15:49 
  • lku lku(提问者) 我之前打错了,不是同一列出现。是BCD 三列
    2022-11-03 15:50 
  • Z4u3z1 Z4u3z1 回复 lku(提问者) 除非只有一行,或者只选择了同一个值否则费大力气写的JS没价值
    2022-11-03 15:54 
  • lku lku(提问者) 回复 Z4u3z1 意思就是,我如果A4第一次提交入库了AAA,假设我现在的BCD三列都隐藏的。但是因为库内有AAA,我一打开报表,B就是默认出现的。后续如果还提交了BBB ,这样子。我一打开报表,BC列都会默认显示。 就是如果库内有AAA/BBB这样子的数据。这样子我js是实现不了跟随实时出现隐藏和显示列, 是这个意思是吗
    2022-11-03 16:03 
  • Z4u3z1 Z4u3z1 回复 lku(提问者) 我都没想到你说的这个情况,这确实也可以导致上面说的问题
    2022-11-03 16:12 
最佳回答
0
LTC朝Lv6高级互助
发布于2022-11-3 15:12

参考这个,根据不同的选项,进行显示与隐藏

https://bbs.fanruan.com/wenda/question/116482.html

image.png

  • lku lku(提问者) 我打错了T-T,我需要的多列,不是多行
    2022-11-03 15:51 
  • 3关注人数
  • 398浏览人数
  • 最后回答于:2023-5-15 20:52
    请选择关闭问题的原因
    确定 取消
    返回顶部