4

在 rails 3.2.9 中,我正在使用 twitter bootstrap gem 并尝试使用它的 datepicker。在这个日期选择器工具中,我需要禁用过去的日期,我需要启用当前日期和未来日期。但现在我无法禁用过去的日期。

我尝试过不同的方法,

例如 1:

function scriptDatePicker(id){
var today = new Date();
var dd = today.getDate();
var mm = ("0" + (today.getMonth() + 1)).slice(-2) //January is 0!
var yyyy = today.getFullYear();
$('#' + id).datepicker({
    format: "yyyy-mm-dd",
    startDate: yyyy + '-' +  mm + '-' + dd
});
}

例如 2:

$('#id').datepicker({startDate: '01/01/2013'});

例如 3:

$("#datepicker").datepicker({ minDate: 0 });

例如 4:

$('.datepicker').datepicker('setStartDate', '2013-01-01');

而且我还尝试了其他一些示例,但它不起作用。请帮我解决这个问题。

4

2 回答 2

6

HTML 标记:

<input id="dpd1" type="text" data-date-format="yyyy-mm-dd">

jQuery:

var nowTemp = new Date();
var now = new Date(nowTemp.getFullYear(), nowTemp.getMonth(), nowTemp.getDate(), 0, 0, 0, 0);

$('#dpd1').datepicker({
  onRender: function(date) {
    return date.valueOf() < now.valueOf() ? 'disabled' : '';
  }
});

现场示例:http: //jsfiddle.net/Jdqvk/2/

于 2013-04-24T10:35:49.023 回答
0

对于只想显示当前年份并禁用过去几年和未来几年的所有日期的每个人。就是这个:

标记

<input id="dp1" type="text" data-date-format="yyyy-mm-dd">

Javascript

var nowTemp = new Date();
var now = new Date(nowTemp.getFullYear());

$('#dp1').datepicker({
  onRender: function(date) {
    return date.getFullYear() < now.valueOf() ? 'disabled' : (date.getFullYear() > now.valueOf() ? 'disabled' : '');
  }
});
于 2014-05-18T13:53:37.560 回答