在rails 3.2.13项目中,我使用的是bootstrap datepicker插件。现在,日历通过禁用以前的日期显示当前日期。现在我需要限制日历以选择当前日期+仅接下来的30天。
我使用下面的代码来禁用上一个日期,
function currentDatePicker(id){
var nowTemp = new Date();
var now = new Date(nowTemp.getFullYear(), nowTemp.getMonth(), nowTemp.getDate(), 0, 0, 0, 0);
$('#' + id).datepicker({
format: "yyyy-mm-dd",
onRender: function(date) {
return date.valueOf() < now.valueOf() ? 'disabled' : '';
}
});
}
答案 0 :(得分:3)
尝试maxDate
$('#' + id).datepicker({ maxDate: "+30d" });
或
$('#' + id).datepicker( "option", "maxDate", "+30d" );
<小时/> 在OP的评论
之后更新
$('#' + id).datepicker({
maxDate: "+30d",
minDate:0
});
答案 1 :(得分:3)
在Bootstrap datepicker中设置当前日期使用: startDate: new Date()
以前的日期是明确的。
设置接下来的30天使用: endDate: '+30d'
它只显示当前日期的30天
这里是示例代码:
$('#datepicker').datepicker({ startDate: new Date(), // controll start date like startDate: '-2m' m: means Month endDate: '+30d' });
答案 2 :(得分:0)
试试这个:
$('#datepicker').datepicker({
startDate: 0,
endDate: '+30d'
});
答案 3 :(得分:-1)
试试这个工作演示:http://jsfiddle.net/1wsf97pt/
$(function () {
$("#Id").datepicker({
minDate: new Date,
onSelect: function (dateText, inst) {
try {
$.datepicker.parseDate('mm/dd/yy', dateText);
} catch (e) {
alert(e);
};
}
});
});