报表知识库
我要提问

如何做日期校验

对于用户输入的信息进行合法性校验,以避免错误或者非法数据入库,在开发报表过程中是非常常见的需求。润乾报表在设计器中提供校验这一功能点,使得检验数据合法性的工作不再复杂,只需在校验窗口的表达式中写好校验逻辑,出错提示中写好一旦出现不合法数据弹出的提示性语言即可完成复杂的校验工作。但是如果遇到复杂点的业务逻辑就要写JS去实现了。下面就以判断日期大小为例简单介绍一下如何调用JS校验数据的合法性。

第一步:制作一张填报表,如下图所示:

 63

第二步:在发布报表的Jsp里写Js判断雇佣日期必须大于出生日期,否则出现友好性提示。

<script language=”javaScript”>

         function test(cellOne,cellTwo){

         var year1 = cellOne.substr(0,4);

         var year2 = cellTwo.substr(0,4);

         var month1 = cellOne.substr(5,2);

         var month2 = cellTwo.substr(5,2);

         var day1 = cellOne.substr(8,2);

         var day2 = cellTwo.substr(8,2);

         var temp1 = year1+”/”+month1+”/”+day1;

         var temp2 = year2+”/”+month2+”/”+day2;

         var date1 = new Date(temp1);

         var date2 = new Date(temp2);

         if(date1.getTime()<date2.getTime()){

         return false;

         }else{

         return true;}  }

</script>

第三步:在F5单元格中调用JS实现校验的效果。如图所示:

 64

预览效果如下:

 65

通过以上步骤就可以验证出来日期的大小并给出友好性提示。如果不写JS直接判断日期大小是有问题,只有在JS中将单元格中传的date类型的数据转成特定格式的日期类型才能进行大小的比较。