请查看我的fiddle。
我有一个月份选择器,只允许用户提前一年选择,但我想要的是过去几个月被禁用,以及提前一年被禁用的任何月份,但我无法弄清楚如何获得这个工作
示例场景 本月为'十月',因此'2015年'月'1月至9月'将被禁用,11月至12月'将被禁用为'2016年'
我尝试过使用minDate:“0”和maxDate:“1y”但它们不起作用。
HTML
<div class="input-group date" style="width: 200px">
<input type="text" id="example1" class="form-control" style="cursor: pointer"/>
<span class="input-group-addon">
<i class="glyphicon glyphicon-calendar"></i>
</span>
</div>
JQuery的
$('#example1').datepicker
({
format: "MM yyyy",
minViewMode: 1,
autoclose: true,
startDate: new Date(new Date().getFullYear(), '0', '01'),
endDate: new Date(new Date().getFullYear()+1, '11', '31')
});
答案 0 :(得分:7)
<强> DEMO 强>
您可以使用startDate
和endDate
执行此操作,但请尝试在外部的某处分配日期变量,如下所示:
var date=new Date();
var year=date.getFullYear(); //get year
var month=date.getMonth(); //get month
$('#example1').datepicker
({
format: "MM yyyy",
minViewMode: 1,
autoclose: true,
startDate: new Date(year, month, '01'), //set it here
endDate: new Date(year+1, month, '31')
});
答案 1 :(得分:3)
我想要的是过去几个月被禁用以及任何月份 提前一年后被禁用
我尝试过使用minDate:“0”和maxDate:“1y”但它们不起作用。
你走在正确的轨道上。但是,而不是minDate
和maxDate
使用startDate
和endDate
。像这样:
$('#example1').datepicker ({
startDate: "-0m",
endDate: "+1y",
...
});
-0m
仅允许本月和+1y
仅允许最多一年。
答案 2 :(得分:0)
将其用于禁用上个月和未来月份并启用当前月份和日期。
<script type="text/javascript">
$(document).ready(function () {
var date = new Date();
//Create Variable for first day of current month
var firstDay = new Date(date.getFullYear(), date.getMonth(), 1);
$("#txtDate").datepicker({
endDate: new Date(),
startDate: firstDay,
});
});
</script>