V4 填报表如何动态控制某个单元格是不是可写

 

背景需求:
当 A2 单元格的值为 1 的时候,我的 B2 是可写的,当 A2 不为 1 的时候,B2 单元格不可写。

实现步骤:
1 、制作一张填报表,命名为 test.raq

imagepng

将 C4 单元格的数据类型设置为 html,这里是为了报表加载的时候,函数就触发。
在 A4 数据的填报属性中,在自动计算里调用一下 A2 单元格的触发函数,如下图:

imagepng
2、写 jsp 展现报表的页面。


<%@ taglib uri="/WEB-INF/runqianReport4.tld" prefix="report" %>

<html>

<head>

</head>

<script type="text/javascript">

       function checkkexie(a) {              

              //alert("a=1");

              var val = document.getElementById ("report1_A2").innerHTML;   

              //alert(val);                             

              var cellB2 = document.getElementById("report1_B2");

              if(val=='1'){            

                     //修改单元格的背景色

                     cellB2.style.backgroundColor="#FFFFFF";

                     //修改单元格可写

                     cellB2.disabled=false;                        

              }else if (val!='1')

              {     

                     //修改单元格的背景色               

                     cellB2.style.backgroundColor="#808080";         

                     //修改单元格可写

                     cellB2.disabled=true;

              }              

       }     

</script>

<body >

<table  align=center >

<tr><td>

<report:html name="report1"

                     reportFileName="test.raq"                                       

                     exceptionPage="/reportJsp/myError2.jsp"

/>

</td></tr>

</table>

</body>

</html>

3、启动服务器,访问这个 jsp    即可看到效果