怎么实现某个单元格编辑结束后其他一些单元格的控件不可用(单元格扩展后仍然要有效果)

目前已知道可以通过设置js事件来解决,但是只对第一行单元格有效,扩展出来的单元格就没效果了。

代码如下:
E6JS事件:contentPane.getWidgetByCell('F6').setEnable(false);

FineReport Xinf 发布于 2021-1-21 16:16
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
snrtuemcLv8专家互助
发布于2021-1-21 16:34

WorkBook315.cpt

参考

var arr = contentPane.getWidgetsByName("ss");//扩展控住名为ss
var location = this.options.location;  //获取当前控件的位置
var cr = FR.cellStr2ColumnRow(location);
var col = cr.col;  //列号
var ro = cr.row;  //行号
for (var i = 0; i < arr.length; i++) {
	contentPane.getWidgetByCell(FR.columnRow2CellStr({col: col+1, row: ro+1+i})).setEnable(false);
}

image.png

  • Xinf Xinf(提问者) 我要的效果是填报了这个单元格它右边的单元格就不可用,但是这个单元格是扩展的。 比如填报了A1 B1就不可用,同理扩展出来的A2填报了 对应的B2也不可用。 目前我只能实现A1填报了B1不可用,但是扩展出来的A2填报了B2却还是可用。
    2021-01-21 17:43 
最佳回答
0
ColdmanLv6高级互助
发布于2021-1-21 16:27(编辑于 2021-1-21 17:49)
var location = this.options.location; 
var cr = FR.cellStr2ColumnRow(location);
var col = cr.col;  //列号
var ro = cr.row;  //行号
contentPane.getWidgetByCell(FR.columnRow2CellStr({col: col+1, row: ro})).setEnable(false);


  • Xinf Xinf(提问者) 用过了,也没效果
    2021-01-21 16:33 
  • Coldman Coldman 回复 Xinf(提问者) 更新了
    2021-01-21 16:34 
  • Xinf Xinf(提问者) 回复 Coldman 我要的效果是点击这个单元格右边的单元格不可用,但是这个单元格是扩展的。 比如填报了A1 B1就不可用,同理扩展出来的A2填报了 对应的B2也不可用。 目前我只能实现A1填报了B1不可用,但是扩展出来的A2填报了B2却还是可用。
    2021-01-21 17:42 
  • Coldman Coldman 回复 Xinf(提问者) 那用楼下的JS稍微修改一下就好了
    2021-01-21 17:47 
  • Coldman Coldman 回复 Xinf(提问者) 下次问题描述清楚点,别等回答完了才补充描述
    2021-01-21 17:51 
  • 3关注人数
  • 515浏览人数
  • 最后回答于:2021-1-21 17:49
    请选择关闭问题的原因
    确定 取消
    返回顶部