填报控件问题

填报报表,A1值为是的时候B1单元格为下拉框控件,A1值为否时B1单元格为文本框控件能实现吗?

FineReport yzm216483 发布于 10 小时前
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共4回答
最佳回答
0
技术支持--哈哈Lv4初级互助
发布于10 小时前

可以通过JavaScript控制单元格控件的类型和状态。以下是实现方法:

  1. 模板设计

    • 在A1单元格添加下拉框控件,设置数据字典为"是"、"否"

    • 在B1单元格添加初始控件(如文本框)

  2. 添加JS事件

    • 为A1单元格添加"编辑后"事件,通过JS代码动态修改B1单元格的控件类型

  3. JavaScript代码示例


var value = this.getValue(); //获取A1的值

if(value == "是") {

// 将B1设置为下拉框控件

_g().setCellControl("B1", {

type: "combo",

// 这里添加下拉框的其他配置参数

});

} else {

// 将B1设置为文本框控件

_g().setCellControl("B1", {

type: "text"

});

}

示例图片

注意事项:

  1. 需要确保A1单元格的值改变时能触发JS事件

  2. 下拉框控件需要配置相应的数据字典

  3. 这种方法适用于FineReport普通报表(cpt)和决策报表(frm)

  • yzm216483 yzm216483(提问者) 大佬,换成这个js后,报错提示没有这个接口,CustomJSError :_g(...).setCellControl is not a function
    2025-10-22 10:41 
最佳回答
0
华莉星宸Lv7专家互助
发布于10 小时前

A1的值是手动输入的,【标准不行】

还是从数据库取的【条件属性可以配置】

  • yzm216483 yzm216483(提问者) A1值是一个下拉框选项
    2025-10-22 10:43 
  • 华莉星宸 华莉星宸 回复 yzm216483(提问者) 那不行~
    只能后面找两个格子 单独放文本框和下拉框
    在配置对应的单元格是否可用
    JS控制单元格控件是否可用/可见 https://help.fanruan.com/finereport/doc-view-4055.html
    2025-10-22 10:50 
  • yzm216483 yzm216483(提问者) 回复 华莉星宸 好的,多谢大佬
    2025-10-22 10:51 
最佳回答
0
ID1208Lv6高级互助
发布于10 小时前
  • yzm216483 yzm216483(提问者) 大佬,隐藏行这种确实能实现,现在是因为页面设计到的js太多了,所以在不考虑隐藏行的这种方法的情况下,有其他解决方法吗
    2025-10-22 10:50 
  • ID1208 ID1208 回复 yzm216483(提问者) 两个控件单独放,然后JS控制控件隐藏和显示 --https://help.fanruan.com/finereport/doc-view-4261.html#759c9b7f1112ca4b
    2025-10-22 10:58 
  • yzm216483 yzm216483(提问者) 回复 ID1208 大佬,现在的需求是一个单元格中实现控件的切换,两个单元格这种方式能实现,但会打乱页面展示,所以这种方法在我目前的场景也用不了
    2025-10-22 11:06 
  • ID1208 ID1208 回复 yzm216483(提问者) 同一个单元格目前实现不了,即使是用JS实现界面效果,也不确定会不会影响控件本身的功能。
    2025-10-22 11:12 
  • yzm216483 yzm216483(提问者) 回复 ID1208 好的,多谢大佬
    2025-10-22 11:14 
最佳回答
0
cR7Lv6初级互助
发布于9 小时前(编辑于 9 小时前
  1. 1.用条件属性设置B的不同类型控件。

  2. 2.在A1的编辑结束事件通过JS插入行 _g().appendReportRC(1,"A1"); 通过插入行触发条件属性重新加载,同时设置给一个隐藏单元格赋值为1或者任何值;

  3.  3.然后再给这个隐藏列设置条件属性,当它是1(上一步骤设定的值)时,表示它是通过编辑后事件触发的新增行,把它行高隐藏;

  4. 4.提交属性中增加提交条件,空行不提交。 (判断隐藏列的值)

  • 5关注人数
  • 71浏览人数
  • 最后回答于:9 小时前
    请选择关闭问题的原因
    确定 取消
    返回顶部