如何控制开始时间筛选框和结束时间筛选框日期选择在同一年内?

两个参数,参考的JS实现日期控件校验- FineReport帮助文档 - 全面的报表使用教程和学习资料 (fanruan.com)

目的是开始时间和结束时间不能跨年

image.png

FineReport wayne_ 发布于 2022-10-12 11:30 (编辑于 2022-10-12 13:02)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
wayne_Lv7见习互助
发布于2023-3-16 15:04(编辑于 2023-3-16 15:08)

var start = this.options.form.getWidgetByName("starttime").getValue();  

var end = this.options.form.getWidgetByName("endtime").getValue();  

if( start <= '2022-12-31'){  //判断开始日期是否为空

  alert("错误,开始时间从2023-01-01开始");   //开始日期参数为空时提示

  return false;  

};  

if( start == "" || start==null){  //判断开始日期是否为空

  alert("错误,开始时间不能为空");   //开始日期参数为空时提示

  return false;  

};  

if(end == "" || end==null){  //判断结束日期是否为空

  alert("错误,结束时间不能为空");   //结束日期参数为空时提示

  return false;  

};  

if( start > end){   //判断开始日期是否大于结束日期

  alert("错误,开始时间不能大于结束时间");   //开始日期大于结束日期时提示  

  return false;  

}

结束日期控件的

开始日期:DATEINYEAR($starttime,1)

结束日期:DATEINYEAR($starttime,-1)

最佳回答
0
free_zzLv6中级互助
发布于2022-10-12 11:31

先确定哪个跟哪个 是结束时间跟着开始时间的年份走吗

  • wayne_ wayne_(提问者) 不一定,两个参数,只要同一年就可以
    2022-10-12 13:04 
最佳回答
0
Z4u3z1Lv6专家互助
发布于2022-10-12 11:36

直接用公式

DATEINYEAR($开始日期,1)---年第一天

DATEINYEAR($开始日期,-1)---年度最后一天

image.png

  • 1关注人数
  • 500浏览人数
  • 最后回答于:2023-3-16 15:08
    请选择关闭问题的原因
    确定 取消
    返回顶部