我们经常利用按钮进行一些页面值的处理工作,但是默认的逻辑造成,每次新填报的值,需要点击下空白区域或是执行某个其他操作才可以被正确读取,那么我们如何处理呢?
例:当我们用常规取值的时候,虽然B3单元格录入了值,但是在光标不离开B3的前提下,用JS只获取到了控制而不是实际的值“2”。
想获得B3的值,需要在空白处点击下鼠标,让文本框的左上角的红三角出现才可以。
优化过后则可以将光标强制跳转到A2单元格,使其获得光标,进而强制B3单元格刷新值。
既然任意点击空白处就可以,那么我们就用JS来强制跳转光标实现同样的功能。
模板制作
模板样式设计如下,A3和B3单元格添加文本控件,C3单元格为A3和B3相加值,D3和E3单元格添加按钮控件:
“直接相加”按钮的JS
D3控件名称为直接相加,添加一个点击事件
var B3 = contentPane.curLGP.getCellValue("B3");
var A3 = contentPane.curLGP.getCellValue("A3");
alert("a3的值:"+A3);
alert("b3的值:"+B3);
“优化后”按钮的JS
E3控件名称为优化后,添加一个点击事件
contentPane.curLGP.selectTDCell("A2");
var B3 = contentPane.curLGP.getCellValue("B3");
var A3 = contentPane.curLGP.getCellValue("A3");
alert("a3的值:"+A3);
alert("b3的值:"+B3);
contentPane.curLGP.selectTDCell(“A2”):表示的是,将光标强制跳转到A2单元格,也就相当于用鼠标点击了一下A2单元格,使其获得光标,进而强制B3单元格刷新值。
常见场景
用户通过文本框填报了值,而需要对这个值进行取出判断的时候,经常会取空值,只有用户点击了空白区域,才可以正常取值。
比如:用户填写了手机号码,就可以跳转到领取奖品的页面,若手机号码是最后一个填报栏,填写后,用户直接提交,系统则会认为,手机号码一栏为空。
相关推荐
总结来说,在FineReport中,利用JavaScript来解决控件值刷新不及时的问题是一个实用的技术手段。通过掌握和应用该技术,可以有效提升报表的交互性和用户体验。在编程实现时,关键在于理解FineReport数据刷新机制的...
在FineReport报表开发中,参数控件的动态赋值是一个常见需求,主要用于实现控件间的依赖关系,使得一个控件的值能够影响到其他控件的值。具体应用场景通常出现在报表的参数配置界面,其中当一个参数值发生变化时,...
在FineReport报表设计器中,选中需要控制的控件(假设控件名为“province”),然后在属性面板中将控件的“可见”属性去掉勾选,实现该控件在报表加载时默认为不可见状态。 2. 在条件控件上增加编辑结束事件,并...
标题和描述均聚焦于FineReport报表工具中参数控件的取值与置数操作,这是一种在报表设计领域中实现动态参数交互的有效手段。FineReport,作为国内领先的报表开发工具,由南京帆软软件公司研发,提供了强大的报表设计...
在FineReport中,JavaScript的使用主要体现在控件事件的触发上。事件触发机制是JavaScript与用户交互的关键,能够根据用户的操作动态响应,从而增强报表的互动性和功能性。以下是FineReport中几种常见的事件触发类型...
在FineReport中,地图组件允许用户以地图形式展示数据分布,但有时默认的标签和提示点显示可能不符合特定的需求。为了满足更加个性化和精确的显示要求,FineReport允许用户利用JavaScript来自定义地图标签和提示点。...
本文将深入探讨FineReport中的自定义控件CSS功能,帮助用户更好地理解和利用这一特性,以实现个性化和专业化的报表设计。 首先,我们要明白CSS(Cascading Style Sheets)的作用。CSS是一种用于描述HTML或XML(包括...
这部分通常涉及到使用JavaScript扩展FineReport的基础控件类,并通过快捷方式调用,实现从后端到前端的配置传递。在示例中,FR.CustomComboBoxEditor继承了***boBoxEditor,并在jQuery的上下文中实现了这个扩展。 ...
以下详细讨论了如何在FineReport中设置参数控件以及报表内容的自动居中。 首先,针对参数控件(尤其是多行控件)的居中问题,FineReport提供了两种主要的解决方案。对于7.1.1版本的用户,可以通过拖动界面控件来...
在FineReport中,下拉框控件是一种常见的参数输入方式,用户可以通过选择列表中的选项来过滤或查询数据。多级联动则意味着当用户在一个下拉框中做出选择时,其他关联的下拉框会根据这个选择自动更新其选项,从而实现...
### 报表开发工具FineReport中如何把报表放到网页中显示 #### 一、背景介绍 随着信息技术的发展,越来越多的企业倾向于使用基于浏览器/服务器(Browser/Server,简称BS架构)的系统来处理业务流程。这类系统通常...
资源内包含帆软cpt模板文件,有需要的小伙伴可以自行下载;
虽然理论上可以尝试将报表内容直接显示在`<div>`元素中,但是由于FineReport的JavaScript库采用了jQuery v1.9.2框架,这可能会导致与页面中其他JavaScript库发生冲突。为了避免此类问题,建议始终使用`<iframe>`的...
总的来说,这个资源包提供了一个完整的解决方案,包括了FineReport的报表模板、SQL动态生成逻辑以及JavaScript交互增强。对于希望提升报表功能和用户体验的开发者来说,这是一个非常有价值的参考实例。通过学习和...
在实际报表开发中,比如在进行材料选择和维护时,用户希望选完材料名称或编码后,系统能自动进行数据查询,并将该材料的编码、名称、规格、价格等信息,直接在报表上展现,无需用户进行筛选维护,让用户可以更快地...
在JavaScript中,我们需要继承FineReport的前端控件编辑器,例如`FR.ComboBoxEditor`,创建一个新的编辑器类`FR.CustomComboBoxEditor`,并覆盖或扩展所需的方法。 ```javascript (function($) { FR....
最后,FineReport在JS调用框架中还支持参数控件、表单控件、控件事件、编辑前/后/结束事件等事件,这些事件可以用于在报表中增加更多的交互性。例如,通过在事件中编写JS代码,可以实现对数据的动态处理,增强报表的...
由于XML格式的页面并不适合在浏览器中直接展示,因此需要进行页面转换。页面转换的具体内容是将XML格式的报表数据转换为HTML格式,使之能够在各种标准浏览器中展示。这一转换过程对用户而言是透明的,用户只需要知道...