横向扩展的复选按钮怎么通过按钮控制全选和取消全选。

image.png

FineReport 蓝了个青 发布于 2021-8-25 13:16 (编辑于 2021-10-19 16:25)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
snrtuemcLv8专家互助
发布于2021-8-25 13:28

WorkBook758.cpt

var a=this.getValue();

var location = this.options.location;  //获取当前控件的位置

var cr = FR.cellStr2ColumnRow(location);

var col = cr.col;  //列号

var ro = cr.row;  //行号

for (var i = 0; i < col; i++) {

contentPane.setCellValue(1+i,ro,a);

}//从B列开始,到按钮前一列,循环赋值

image.png

image.png

  • 蓝了个青 蓝了个青(提问者) 大神,有个报错。我导出模板上传了,麻烦大神看看
    2021-08-25 13:41 
  • snrtuemc snrtuemc 回复 蓝了个青(提问者) 你的模板没有按钮控件啊
    2021-08-25 13:45 
  • 蓝了个青 蓝了个青(提问者) 回复 snrtuemc 我看你上传的附件用的是复选框,我就改了
    2021-08-25 13:52 
  • snrtuemc snrtuemc 回复 蓝了个青(提问者) 你参考我的代码去做,一般没问题的
    2021-08-25 13:57 
  • snrtuemc snrtuemc 回复 蓝了个青(提问者) 知道了,我大意了,你是E列开始,需要col-3,多循环赋值了,我的模板是B列开始,不用减,所以没有事情
    2021-08-25 14:46 
最佳回答
0
我乃牛马小兵Lv5初级互助
发布于2021-8-25 13:23

给按钮设置复选框按钮组控件

添加状态改变事件

var flag = this.getValue();

//获取当前值

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

//获取当前页的复选按钮控件数组

if (typeof(boxes[0]) != "undefined") {

for (i = 0; i < boxes.length; i++) {

var cr=FR.cellStr2ColumnRow(boxes[i].options.location);

//获取行列号对象

_g().setCellValue(0,cr.col,cr.row,flag);

//如果控件大于1个,则遍历赋值

}

} else {

var cr=FR.cellStr2ColumnRow(boxes.options.location);

//获取行列号对象

_g().setCellValue(0,cr.col,cr.row,flag);

//如果控件只有1个,则直接赋值

}

最佳回答
0
shirokoLv6资深互助
发布于2021-8-25 13:43
  • 蓝了个青 蓝了个青(提问者) 大神,那这样的话,我前面统计选择了的单元格SUM函数失效了
    2021-08-25 13:54 
  • shiroko shiroko 回复 蓝了个青(提问者) js是绕过帆软直接改网页的,你还想要保全公式逻辑,很难。要不直接给赋值吧,反正全选就是最大数量,全不选就是0
    2021-08-25 14:06 
  • 蓝了个青 蓝了个青(提问者) 回复 shiroko 谢谢大神,上面的答主解决方案更合适一点情况
    2021-08-25 14:50 
  • 4关注人数
  • 680浏览人数
  • 最后回答于:2021-10-19 16:25
    请选择关闭问题的原因
    确定 取消
    返回顶部