设置一个时间范围,超过范围提醒,怎么实现?

比方我要求只能查询三个月的时间,当超过三个月会有提醒,并且禁止查询,怎么实现?用alert吗?

FineReport 用户e9579438 发布于 2020-12-18 10:23
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共7回答
最佳回答
0
krystal033Lv7高级互助
发布于2020-12-18 10:25(编辑于 2020-12-18 10:25)
最佳回答
0
沉默的反补Lv6中级互助
发布于2020-12-18 10:25

用条件属性也行,用alert也可以,看你需要,根据你限制的最大时间判断就好了

最佳回答
0
tangdageLv5初级互助
发布于2020-12-18 10:39(编辑于 2020-12-18 10:56)
提供参考
//结束时间编辑后事件
var s = _g().parameterEl.getWidgetByName('selector').getValue();
var a = _g().parameterEl.getWidgetByName('starttime').getValue();
var b = _g().parameterEl.getWidgetByName('endtime').getValue();
var yesday = (new Date).getTime() - 24 * 60 * 60 * 1000;
var time = new Date(yesday);
time = time.getFullYear() + "-" + (time.getMonth()> 9 ? (time.getMonth() + 1) : "0" + (time.getMonth() + 1)) + "-" +(time.getDate()> 9 ? (time.getDate()) : "0" + (time.getDate()));
if(s==1&&(btime)){
	_g().parameterEl.getWidgetByName('endtime').setValue(time);
	}
//开始时间编辑后事件
var s = _g().parameterEl.getWidgetByName('selector').getValue();
var a = _g().parameterEl.getWidgetByName('starttime').getValue();
var yesday = (new Date).getTime() - 24 * 60 * 60 * 1000;
var date = new Date(yesday);
    var seperator1 = "-";
    var year = date.getFullYear();
    var month = date.getMonth() + 1;
    var strDate = date.getDate();
    if (month >= 1 && month = 0 && strDate time){
	
_g().parameterEl.getWidgetByName('starttime').setValue(time);	
}

可以让开始时间到结束时间只有3个月不?结束时间大于3个月直接修改为刚好是三个月的日期不。要提示可以用帆软的提示框友好一点,alert有点难看

最佳回答
0
LarryAbbyLv5中级互助
发布于2020-12-18 10:42

供参考

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

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

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

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

  return false;       

};       

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

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

  return false;       

};       

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

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

  return false;       

}     

var aDate  =  start.split("-")     

var startdate =  new  Date(aDate[1]  +  '-'  +  aDate[2]  +  '-'  +  aDate[0])    //转换为MM-dd-yyyy格式     

//alert(startdate);   

var aDate  =  end.split("-")     

var enddate  =  new  Date(aDate[1]  +  '-'  +  aDate[2]  +  '-'  +  aDate[0])     

//alert(enddate);   

var subdate=  ((enddate  -  startdate)  /1000/  60/60/24)    //把相差的毫秒数转换为天数     

//alert(subdate);   

if(subdate>7){    //判断结束日期是否超过开始日期后15天     

alert("结束日期请输入在开始日期7天之内");    //结束日期超过开始日期后的7天时提示     

return false;     

}  

 


最佳回答
0
指间沙Lv6中级互助
发布于2020-12-18 10:49(编辑于 2020-12-18 10:52)

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

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

sDate1 = Date.parse(start);

sDate2 = Date.parse(end);

dateSpan = sDate2 - sDate1;

dateSpan = Math.abs(dateSpan);

iDays = Math.floor(dateSpan / (24 * 3600 * 1000));

//alert(iDays);

if(end!="")

{

if( iDays > 90){   //判断是否超过90天

  alert("不能超过三个月,请重新选择日期!");   //结束日期跟开始差90天以上就提示。 

  return false;     

}

}

在点击按钮那边设置一个点击事件。超过90天就提示,并且不进行查询查询,需要重新选择日期。

image.png

最佳回答
0
kaqiyuLv6初级互助
发布于2020-12-18 11:08

限制时间范围就好了啊

最佳回答
0
孤陌Lv6资深互助
发布于2020-12-18 11:41(编辑于 2020-12-18 11:42)

直接在结束日期的日期控件 的结束日期里 写公式

MONTHDELTA($ksrq,3)

image.png

  • 8关注人数
  • 454浏览人数
  • 最后回答于:2020-12-18 11:42
    请选择关闭问题的原因
    确定 取消
    返回顶部