填报功能和单元格之间的联动

如何实现下面的功能

image.png

FineReport Kenny 发布于 2023-7-3 17:06
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共4回答
最佳回答
0
青春只因年少Lv6中级互助
发布于2023-7-3 17:10
单元格编辑后直接变换颜色var value = this.getValue(); //获取当前控件值 var ro = FR.cellStr2ColumnRow(this.options.location).row; var co = FR.cellStr2ColumnRow(this.options.location).col; //获取当前行号 var widget = _g().getWidgetByCell(FR.columnRow2CellStr({ col: co, row: ro })); var c = FR.columnRow2CellStr({ col: co, row: ro }) //alert(c) var d = "td[id^=" + c + "]" if (value <= "1") { $(d).css({'background-color': 'red'}) } else if (value <= "2") { $(d).css({'background-color': 'blue'}) } else if (value <= "3") { $(d).css({'background-color': 'pink'}) } //alert(widget);

修改一下,引用你的单元格的值

  • Kenny Kenny(提问者) 改哪里呢?把if (value <= \"1\") 改为if (value <= \"A1\")吗
    2023-07-03 17:28 
最佳回答
0
Z4u3z1Lv6专家互助
发布于2023-7-3 17:07

你用的帆软几?补个这个图

image.png

  • Kenny Kenny(提问者) 11.0.5
    2023-07-03 17:24 
  • Z4u3z1 Z4u3z1 回复 Kenny(提问者) 只有用楼下的JS方法了~
    2023-07-03 17:25 
最佳回答
0
snrtuemcLv8专家互助
发布于2023-7-3 17:11

var cell = contentPane.curLGP.getTDCell(1,1);

contentPane.curLGP.selectTDCell(cell);

var a=this.getValue();

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

var cr = FR.cellStr2ColumnRow(location);

var col = cr.col;  //列号

var ro = cr.row;  //行号

var b=contentPane.setCellValue(col,ro+1);//获取下一个单元格值

var c = FR.columnRow2CellStr({col: col, row: ro+1});  //获取下一个单元格

if(a>b){

$("td[id^='"+c+"-0']").css("background","yellow");

$("td[id^='"+c+"-0']").css("color","red");

}

  • Kenny Kenny(提问者) 直接复制黏贴不行啊。A1单元格添加数字控件→编辑后事件,把您的代码黏贴进去,然后填报预览,无论填报10,还是20, 30,都不行
    2023-07-03 17:27 
  • snrtuemc snrtuemc 回复 Kenny(提问者) 你是A1,这个var cell = contentPane.curLGP.getTDCell(1,1);改成var cell = contentPane.curLGP.getTDCell(1,0);
    2024-02-02 20:38 
最佳回答
0
用户b5299530Lv5见习互助
发布于2023-7-3 17:44

这个用条件属性不能做吗,填报完做个自动刷新事件就ok了

  • 3关注人数
  • 950浏览人数
  • 最后回答于:2023-7-3 17:44
    请选择关闭问题的原因
    确定 取消
    返回顶部