开始时间和结束时间,能设置必须是一天之内嘛

image.png这个开始时间,结束时间,能不能限制必须是24小时之内,否则不行

FineReport jutqgCvS 发布于 2025-6-16 10:50
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
1
ScyalcireLv7高级互助
发布于2025-6-16 10:57(编辑于 2025-6-16 10:59)

可以加一个查询按钮, 写JS事件进行判断

// 获取开始时间和结束时间控件的值
var start = _g().getParameterContainer().getWidgetByName("start_time").getValue();
var end = _g().getParameterContainer().getWidgetByName("end_time").getValue();

// 验证开始时间和结束时间是否为空
if (!start || start === "") {
    FR.Msg.alert("提示", "开始时间不能为空");
    return false;
}
if (!end || end === "") {
    FR.Msg.alert("提示", "结束时间不能为空");
    return false;
}

// 将字符串时间转换为Date对象
var startdate = new Date(start);
var enddate = new Date(end);

// 验证开始时间是否大于结束时间
if (startdate > enddate) {
    FR.Msg.alert("提示", "开始时间不能大于结束时间!");
    return false;
}

// 计算时间差(以毫秒为单位),然后转换为天数并检查是否超过1天(24小时)
var timediff = enddate - startdate; // 毫秒差
var daysdiff = timediff / (1000 * 60 * 60 * 24); // 转换为天数

// 检查时间差是否超过24小时(1天)
if (daysdiff > 1) {
    FR.Msg.alert("提示", "开始时间和结束时间相差不能超过24小时!");
    return false;
}

最佳回答
0
用户k6280494Lv6专家互助
发布于2025-6-16 10:54

直接设置结束

image.png

最佳回答
0
任青青Lv2见习互助
发布于2025-6-16 11:51

var time1 = new Date(_g().getWidgetByName("开始时间").getValue())

var time2 = new Date(_g().getWidgetByName("结束时间").getValue())

var time3 = new Date()

time3.setTime(time1.getTime()+(24*60*60*1000))

if(time2 > time3){

_g().getWidgetByName("结束时间").setValue(time3)

}

//以上是直接判断如果结束时间选择大于开始时间的24小时,那么强行选择24的时间,否则按照选择的结束时间来

  • 4关注人数
  • 50浏览人数
  • 最后回答于:2025-6-16 11:51
    请选择关闭问题的原因
    确定 取消
    返回顶部