【送分】复选按钮控制全选

模板:GettingStarted.cpt (FineReport默认模板)

需求场景:单元格E3的复选按钮控件可以控制E4扩展出的所有单元格控件全选或全不选

报表设计:E3复选按钮控件,E4复选按钮控件(左父格B4)

问题:根据最左父格原则,B4的父格是A4,导致E4虽然指向了B4,实际最左父格是A4,但是扩展的父格却要以B4扩展出来的数据为基础

截图如下

FineReport fisker 发布于 2022-4-11 19:50 (编辑于 2022-4-11 20:29)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
fiskerLv4见习互助
发布于2022-4-11 19:58(编辑于 2022-4-11 20:30)

var boxes = _g().getWidgetsByName("box");

var box = _g().getWidgetByName("box");

差了一个"s"

送分3.png

JS代码:

var flag = this.getValue(); var location = this.options.location; var boxes = _g().getWidgetsByName("box"); var result = []; if (typeof(boxes[0]) != "undefined") { for (i = 0; i < boxes.length; i++) { var cr = FR.cellStr2ColumnRow(boxes[i].options.location); var col = cr.col - 1; var row = cr.row; boxes[i].getValue()==true?boxes[i].setValue(false):boxes[i].setValue(true); result.push(_g().getCellValue(0, col, row)); } } else { var cr = FR.cellStr2ColumnRow(boxes.options.location); var col = cr.col - 1; var row = cr.row; boxes.getValue()==true?boxes.setValue(false):boxes.setValue(true); result.push(_g().getCellValue(0, col, row)); } console.log(result);

最佳回答
0
@Lv6资深互助
发布于2022-4-11 19:54
https://help.fanruan.com/finereport/doc-view-142
  • fisker fisker(提问者) 和你提供的文档的解决方向不一样,是getWidgetsByName
    2022-04-11 19:59 
  • 0关注人数
  • 642浏览人数
  • 最后回答于:2022-4-11 20:30
    请选择关闭问题的原因
    确定 取消
    返回顶部