我有一个带有日期时间本地输入字段的JSP html页面,我已经在输入字段中加载了一个值(来自backend)
<input type="datetime-local" id="scheduleTaskDateTimeBox" style="margin-left: 25px;" name="scheduleTaskDateTimeBox" value="20-08-2018T11:30:45.0" onChange="DateTimeDisplayer()"></td>
我想从当前日期开始,将最小值设置为当前日期,将最大值设置为90天(这已在js函数中完成),并且用户可以设置新的日期时间值(无法去做吧!!)。
function DateTimeDisplayer(){
$("#scheduleTaskDateTimeBox").attr('required', true);
scheduleTaskDateTimeBox.style.display = "block";
var minDateTime = new Date();
minDateTime.setMinutes(minDateTime.getMinutes() + 30);
var dd = minDateTime.getDate();
var mm = minDateTime.getMonth()+1; //January is 0!
var yyyy = minDateTime.getFullYear();
var hh = minDateTime.getHours();
var mi = minDateTime.getMinutes();
var ss = '00.0';
if(dd<10){
dd='0'+dd;
}
if(mm<10){
mm='0'+mm;
}
if(hh<10){
hh='0'+hh;
}
if(mi <10){
mi='0'+mi;
}
minDateTime = yyyy+'-'+mm+'-'+dd+'T'+hh+':'+mi+':'+ss;
scheduleTaskDateTimeBox.min = minDateTime;
maxDateTime = new Date(minDateTime);
maxDateTime.setDate(maxDateTime.getDate() + 90);
var _dd_ = maxDateTime.getDate();
var _mm_ = maxDateTime.getMonth()+1; //January is 0!
var _yyyy_ = maxDateTime.getFullYear();
var _hh_ = maxDateTime.getHours();
var _mi_ = maxDateTime.getMinutes();
var _ss_ = '00.0';
if(_dd_<10){
_dd_='0'+_dd_;
}
if(_mm_<10){
_mm_='0'+_mm_;
}
if(_hh_<10){
_hh_='0'+_hh_;
}
if(_mi_ <10){
_mi_='0'+_mi_;
}
maxDateTime = _yyyy_+'-'+_mm_+'-'+_dd_+'T'+_hh_+':'+_mi_+':'+_ss_;
scheduleTaskDateTimeBox.max = maxDateTime
console.log(maxDateTime);
console.log(scheduleTaskDateTimeBox);
}
此JS函数以某种方式不起作用,未设置新时间的值,并返回到后端。
有更好的方法吗?