具体开发设计如图所示,概括步骤如下:
1、K2单元格添加文本控件,文本控件设置了“编辑结束”事件; 2、在事件中添加了JS代码,实现K2单元格与C2单元格的联动,即K2单元格编辑结束后,C2会自动填充一个数据,比如K2出现了【XXX】,就会通过JS代码在C2中填写XXX; 3、这个JS代码在直接双击K2单元格进行编辑时,是生效的。但是一旦K2的数据是excel导入或者复制粘贴进去的,该JS代码就不生效; 4、通过测试后发现,如果K2的数据是excel导入或者复制粘贴的,那么在K2事件中的JS代码“var val = this.getValue()”获取的值为空,C2也就没有值可以插入。
因此,想询问一下,怎样才能让复制或excel导入数据时,JS代码“var val = this.getValue()”这里获取到的值不为空?
当然,如果并非此原因,也期待大家的指点。非常感谢!
K2单元格规定输入格式为hh:mm,控件事件的JS代码如下:
var val = this.getValue(); if (val.length !== 0) { var result = val.match(/\d+:\d+/).toString(); var pl = result.match(/\d+/g);
var hh = parseInt(pl[0]); var mm = parseInt(pl[1]);
var finalCalc = hh * 60 + mm; contentPane.setCellValue(2, row, finalCalc); }
|