JS实现填报时对修改过的单元格进行标识
1. 描述
在填报预览时,对单元格编辑后,其左上角有个红色标记,但非常不明显,用户很难注意到。有没有什么好的办法,对单元格操作后,将其做较明显的特殊标记处理,方便用户识别呢?
如图所示:对单元格进行操作后,将其单元格进行背景色着色、文本加粗等标记。
2. 实现方法
js代码,可直接使用下面的,更加简单:
var $td=$(arguments[0]);
//当前编辑单元格
$td.css("background-color","rgb(153,204,0)");
//设置所在单元格内容:颜色
$td.css("font-weight","bold");
//设置所在单元格内容:加粗
2.2 方法2 直接修改值改变后的css样式

对应的css类为dirty类,只需要修改css中这个dirty类的样式,增加一个背景色或增加加粗样式,在单元格值发生改变后,会自动使用这个dirty,即可完成对所有填报报表中值发生改变的控件均调用这个样式,非常简单适用,方法如下
添加加载结束事件,如下图

代码如下:
contentPane.on("cellselect", function (td){
$('.dirty').css('background-color',"rgb(153,204,0)");
//设置dirty类背景色
$('.dirty').css('font-weight',"bold");
//设置dirty类字体加粗
});
使用这种方法后只需要在填报模板的加载结束事件中写一次代码即可,不需要再在每个控件的编辑结束事件中单独写代码
3. 效果预览
保存模板,点击填报预览,效果如上图。
注:为使效果更明显,此处将填报页面设置中的填报当前编辑行背景设置的勾选去除
附件列表
主题: 二次开发


