Javascript 更改jquery datetimepicker中的初始最小日期
我分配Javascript 更改jquery datetimepicker中的初始最小日期,javascript,jquery,Javascript,Jquery,我分配 $(function(){ var startDate = $('#datefrom'); var endDate = $('#dateto'); startDate.datetimepicker('option', 'minDate', new Date(+new Date()-2592000000)); //***here I try to init the min date for the start date startDate.datetimepicker({
$(function(){
var startDate = $('#datefrom');
var endDate = $('#dateto');
startDate.datetimepicker('option', 'minDate', new Date(+new Date()-2592000000));
//***here I try to init the min date for the start date
startDate.datetimepicker({
showSecond: true,
dateFormat: 'yy/mm/dd',
timeFormat: 'HH:mm:ss',
onClose: function(dateText, inst) {
if (endDate.val() != '') {
var testStartDate = startDate.datetimepicker('getDate');
var testEndDate = endDate.datetimepicker('getDate');
if (testStartDate > testEndDate)
endDate.datetimepicker('setDate', testStartDate);
}
// else {
// endDate.val(dateText);
// }
},
onSelect: function (selectedDateTime){
endDate.datetimepicker('option', 'minDate', startDate.datetimepicker('getDate') );
}
});
endDate.datetimepicker({
showSecond: true,
dateFormat: 'yy/mm/dd',
timeFormat: 'HH:mm:ss',
onClose: function(dateText, inst) {
if (startDate.val() != '') {
var testStartDate = startDate.datetimepicker('getDate');
var testEndDate = endDate.datetimepicker('getDate');
if (testStartDate > testEndDate)
startDate.datetimepicker('setDate', testEndDate);
}
// else {
// startDate.val(dateText);
// }
},
onSelect: function (selectedDateTime){
startDate.datetimepicker('option', 'maxDate', endDate.datetimepicker('getDate') );
}
});
});
在datetimepicker中激活过去1个月的日期。但它仍然只显示当前日期的激活日期
在这里初始化插件时,我将startdate min值设置为1个月后。但它需要工作
我使用这个插件
让我们看看生成的日期,好吗
> new Date()
Sun May 18 2014 21:09:57 GMT-0700 (PDT)
> new Date(+new Date() - 2592000)
Sun May 18 2014 20:26:46 GMT-0700 (PDT)
看起来您正在减去秒,但是+new Date()
转换为,并且日期
需要毫秒。看一看这张照片。如果您使用毫秒而不是秒,它可以正常工作
然而,更为简洁的方法是简单地减去一个月:
var minDate = new Date();
minDate.setMonth(minDate.getMonth() - 1);
您可以使用字符串格式类型简单地执行此操作。你可以办理登机手续。 这只适用于确切的一个月
var date = new Date().getDate() - 1;
var minDate = '-1m-' + date + 'd';
$( '.datepicker' ).datepicker({minDate: minDate});
如果你只想从今天起一个月,就这样做吧
$( '.datepicker' ).datepicker({minDate: '-1m'});
我希望这可能会有所帮助。很抱歉,我减去了2592000000而不是2592000。我已经对Github的链接发表了评论。请参考该插件并告诉我初始化min Date的方法。作为插件,您必须将minDate设置为“dd-mm-yyyy”格式。但是,您可以直接在minDate上设置日期对象。这就是它不起作用的原因。你需要做的是格式化你的minDate。你可以很容易地使用moment.js将日期对象转换成字符串格式。