千家信息网

JS实现填报时怎么对修改过的单元格进行标识

发表于:2025-02-16 作者:千家信息网编辑
千家信息网最后更新 2025年02月16日,这期内容当中小编将会给大家带来有关JS实现填报时怎么对修改过的单元格进行标识,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。1. 描述在填报预览时,对单元格编辑后,其
千家信息网最后更新 2025年02月16日JS实现填报时怎么对修改过的单元格进行标识

这期内容当中小编将会给大家带来有关JS实现填报时怎么对修改过的单元格进行标识,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

1. 描述

在填报预览时,对单元格编辑后,其左上角有个红色标记,但非常不明显,用户很难注意到。有没有什么好的办法,对单元格操作后,将其做较明显的特殊标记处理,方便用户识别呢?

如图所示:对单元格进行操作后,将其单元格进行背景色着色、文本加粗等标记。


2. 实现方法

打开模板 %FR_HOME%\WebReport\WEB-INF\reportlets\doc\Form\LineForm\LineForm.cpt

2.1 方法1:编辑结束后修改单元格样式

控件编辑后事件中修改单元格样式,选中需要设置的单元格B3:K3,右击控件设置>事件编辑,添加一个编辑结束事件:



js代码如下:

1. var location = this.options.location;

2. //获取控件的位置

3. var cr = FR.cellStr2ColumnRow(location);

4. //单元格列号

5. var col = cr.col;

6. //单元格行号

7. var ro = cr.row;

8. //设置所在单元格背景色:草绿色

9. $("tr[tridx="+ro+"]").find("td[col="+col+"]").css("background-color","rgb(153,204,0)");

10. //设置所在单元格内容:加粗

11. $("tr[tridx="+ro+"]").find("td[col="+col+"]").css("font-weight","bold");

js代码,可直接使用下面的,更加简单:

1. var $td=$(arguments[0]);

2. //当前编辑单元格

3. $td.css("background-color","rgb(153,204,0)");

4. //设置所在单元格内容:颜色

5. $td.css("font-weight","bold");

6. //设置所在单元格内容:加粗

2.2 方法2 直接修改值改变后的css样式

使用上述方法的话,必须对所有填报控件均要设置一遍编辑结束事件,如果模板中填报控件较多且不是连续的话,设置工作量比较大,效率也比较低,其实在填报中,每个单元格值改变后,都会触发内部的值改变事件,并且会给单元格左上角加上小红色三角,如下图所示


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

添加加载结束事件,如下图


代码如下:

1. contentPane.on("cellselect", function (td){

2. $('.dirty').css('background-color',"rgb(153,204,0)");

3. //设置dirty类背景色

4. $('.dirty').css('font-weight',"bold");

5. //设置dirty类字体加粗

6. });

使用这种方法后只需要在填报模板的加载结束事件中写一次代码即可,不需要再在每个控件的编辑结束事件中单独写代码

.效果预览

保存模板,点击填报预览,效果如上图。

上述就是小编为大家分享的JS实现填报时怎么对修改过的单元格进行标识了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注行业资讯频道。

单元 事件 控件 方法 样式 代码 所在 模板 背景 标记 格内 标识 明显 内容 左上角 效果 格值 用户 红色 分析 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 游戏王md游戏服务器没有响应 服务器全闪存读写速率 隐适美软件开发 计算机视觉属于软件开发吗 关于网络安全问题硬笔书法 面向对象数据库access 金融信息基础数据库的功能有哪些 vb.net数据库实例 怎么把文件服务器映射到公网 计算机网络技术提前学习 数据库有哪六个范式 saas服务需要准备服务器吗 红管2服务器标是什么意思 管理本地mysql服务器 博客系统数据库物理模型设计 公司需要服务器吗 宝山区app软件开发管理 重庆net 软件开发公司 广州梦享家互联网科技有限公司 网络安全宣传员海报 网络技术保障法制课堂 机架服务器的三重抗震 2019年网络安全比赛简称 制造执行系统软件开发哪家服务好 计算机网络技术专业认知文本 php 获取传送源数据库 江苏北斗时间服务器设置云主机 有专门培训软件开发的地方 软件开发商趋势 哈利波特不同服务器可以赠送吗
0