js修改单元格背景色不生效
var location = this.options.location; var cr = FR.cellStr2ColumnRow(location); var col = cr.col; var ro = cr.row; // 获取下方一行的控件对象 var a = contentPane.getWidgetByCell(FR.columnRow2CellStr({col: col, row: ro + 1})); // 判断a等于0时,禁用并清空控件 if (this.getValue() === "0") {             a.setEnable(false);             a.setValue("");             $("td[id^='"+a+"-0']").css("background-color","lightgray");     }); } else {             a.setEnable(true); }

禁用、清空都生效了。

这一段修改背景色没生效,是什么原因呢?

FineReport 遇见l 发布于 2025-3-19 17:50 (编辑于 2025-3-19 17:51)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
用户k6280494Lv6资深互助
发布于2025-3-19 17:54(编辑于 2025-3-19 17:55)

单元格背景JS示例索引

鼠标点击/悬浮时修改单元格背景接口

控件会覆盖单元格背景,你需要设置控件的背景

最佳回答
0
CD20160914Lv8专家互助
发布于2025-3-19 21:14

语法有错误,你的语句修改

var location = this.options.location; 

var cr = FR.cellStr2ColumnRow(location); 

var col = cr.col; 

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

var a = contentPane.getWidgetByCell(FR.columnRow2CellStr({col: col, row: ro + 1}));

 // 判断a等于0时,禁用并清空控件 

 if (this.getValue() === "0") {   

 a.setEnable(false);        

 a.setValue("");            

 $("td[id^='"+a+"-0']").css("background-color","lightgray");     

 }; 

 else { 

 a.setEnable(true); 

 }

---------如果你的不行请用下面这样-----------------

 

var temp = this.getValue();

var ro = FR.cellStr2ColumnRow(this.options.location).row;

var co = FR.cellStr2ColumnRow(this.options.location).col;

var bl=ro+1;

var a = contentPane.getWidgetByCell(FR.columnRow2CellStr({col: col, row: bl}));

var rng="#A"+bl+"-0-0";//-0-0  里面第一个0是工作表的意思,所以要注意看工作表在第几个,表示第一个工作表A列单元格变色

if (temp == "0")

{

$(rng).css("background-color","red");

a.setEnable(false);        

a.setValue(""); 

}

else {

 $(rng).css("background-color","#FFFFFF");

 a.setEnable(true);

}

  • 3关注人数
  • 16浏览人数
  • 最后回答于:2025-3-19 21:14
    请选择关闭问题的原因
    确定 取消
    返回顶部