fvs开始日期和结束日期控件,时间相差如果小于6个月弹窗提示

fvs开始日期和结束日期控件,时间相差如果小于6个月则弹窗提示,且将选择完成的日期重置为选择前的。

FineReport 水一RAR 发布于 2024-7-19 11:24
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
华莉星宸Lv7资深互助
发布于2024-7-19 12:09

大概思路如下:

控件返回值用字符串

结束日期控件 添加编辑结束事件

-----------------------------------------------------

JS代码如下:

//返回两个日期相差的月数

function MonthsBetw(date1, date2) {

//用-分成数组

date1 = date1.split("-");

date2 = date2.split("-");

//获取年,月数

var year1 = parseInt(date1[0]),

month1 = parseInt(date1[1]),

year2 = parseInt(date2[0]),

month2 = parseInt(date2[1]),

//通过年,月差计算月份差

months = (year2 - year1) * 12 + (month2 - month1) + 1;

return months;

}

var edtvalue=this.getValue();

var edt=duchamp.getWidgetByName("edt");

var sdtvalue=duchamp.getWidgetByName("sdt").getValue();

if(MonthsBetw(sdtvalue,edtvalue)<6){

    alert("开始日期和结束日期小于6个月,请重新选择~");

}

效果

d992c22ecc208a2ac17a94d2ec9482fc.png

最佳回答
1
用户k6280494Lv6资深互助
发布于2024-7-19 11:39(编辑于 2024-7-19 11:41)

这样js会麻烦,给个简单想法,根据开始时间,设置结束时间的最小值,这样就不能选到小于6个月的时间

image.png

最佳回答
0
CD20160914Lv8专家互助
发布于2024-7-19 11:38(编辑于 2024-7-19 11:40)

image.png

编辑结束时间去写。获取两个控件的值做比较!

不能相差180天就行。。。

JS实现日期控件查询天数控制 - FineReport帮助文档 - 全面的报表使用教程和学习资料 (fanruan.com)

  • 4关注人数
  • 340浏览人数
  • 最后回答于:2024-7-19 12:09
    请选择关闭问题的原因
    确定 取消
    返回顶部