发布网友
共2个回答
热心网友
代码好多~~||,你要不试试用finereport吧,不需要写这么多代码也能实现的。
3.1 模板设计
表样设计如下:
设置B2单元格的控件类型为数字型,设置B3单元格的控件类型为文本
3.2 JS事件设置
对B2单元格控件设置事件编辑,添加编辑结束事件,具体JS代码如下:
1.var D2value = contentPane.curLGP.getCellValue("D2"); //获取D2单元格的值
2.if (this.getValue() < D2value){ //判断输入值是否小于D2单元格值
3. FR.Msg.alert(FR.i18n.Alert, "该值不能小于" + D2value); //弹出对话框
4.return false;
5.}
对B3单元格控件进行事件编辑,添加编辑结束事件,具体JS代码如下:
1.var D3value = contentPane.curLGP.getCellValue("D3"); //获取D3单元格的值
2.if (this.getValue() != D3value){ //判断输入是否与D3单元格相等
3.FR.Msg.alert(FR.i18n.Alert, "该值应等于" + D3value); //弹出对话框
4. return false;
5.}
其中,D3value是自定义变量,用于获得D3单元格的值,if语句是用来判断该单元格输入后的值是否等于D3value,如果不是是则弹出警告:该值应等于abc。
3.3填报预览
点击填报预览,在B2单元格中输入数字1,并按回车确定,则弹出警告,如下图:
在B3单元格中输入add,并按回车确定,也弹出校验警告,如下图:
热心网友
你可以在报表的展现界面定义如下js方法
<script>
function gValue(){
var tab1=document.getElementById("report1_A1").innerHTML; --使用这种方式获取单元格需要在html标签中添加 generateCellId="yes"属性才能获取单元格编号
alert(tab1);
}
</script>
然后,在报表的“取A1单元格值”的单元格设置HTML事件,调用gValue()方法。
参考文献:
c.raqsoft.com.cn/article/1534918139702