1. 概述
1.1 预期效果决策报表中报表块,像普通报表一样, 当 鼠标悬浮/点击/离开单元格时改变单元格字体颜色 或底色等样式,如下图所示: 1.2 实现方法通过给决策报表报表块单元格添加「初始化后」 JS 事件实现。 2. 示例
2.1 新建模板1)新建决策报表,添加数据库查询,SQL 语句为:SELECT * FROM 区域销售 2)在决策报表中添加报表块 report0 并设置其样式,如下图所示: 2.2 添加 JS 事件选中 report0 ,点击「组件设置>事件」,添加「初始化后」事件,如下图所示: JavaScript 代码如下: - setTimeout(function() {
- //鼠标经过时
- $(".x-table.REPORT0table td span.linkspan").mousemove(function() {
- //所在单元格字体颜色为红色
- $(this).css("color", "red");
- //所在单元格背景为蓝色
- $(this).css("background-color", "blue");
- //所在单元格字体加粗
- $(this).css("font-weight", "bold");
- //所在单元格添加下划线
- $(this).css("text-decoration", "underline");
- //所在行单元格字体:11px
- $(this).find("td").css("font-size", "11px");
- });
- //鼠标点击时
- $(".x-table.REPORT0table td span.linkspan").mousedown(function() {
- //所在单元格字体颜色为黄色
- $(this).css("color", "yellow");
- //所在单元格背景为黑色
- $(this).css("background-color", "black");
- //所在单元格字体加粗
- $(this).css("font-weight", "bold");
- //所在单元格添加上划线
- $(this).css("text-decoration", "overline");
- //所在行单元格字体:13px
- $(this).find("td").css("font-size", "13px");
- });
- //鼠标离开
- $(".x-table.REPORT0table td span.linkspan").mouseout(function() {
- //所在单元格字体颜色为黑色
- $(this).css("color", "black");
- //所在单元格背景为白色
- $(this).css("background-color", "white");
- //所在单元格字体正常
- $(this).css("font-weight", "normal");
- //所在单元格无下划线
- $(this).css("text-decoration", "none");
- //所在行单元格字体:9px
- $(this).find("td").css("font-size", "9px");
- });
- }, 100);
复制代码注:如果预览时效果不生效, 调大 setTimeout 的延时时间即可,比如调大到 500。
2.3 效果预览
保存模板,选择「表单预览」,效果如下图所示: 注:不支持移动端。 3. 模板下载已完成的模板,可参见:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\JS\表单JS实例\JS实现决策报表鼠标移动时单元格样式改变.frm 模板下载见负附件
编辑于 2021-1-2 13:03
|