帮助jquery datepicker日历日期禁用

时间:2010-03-05 07:16:44

标签: javascript jquery datepicker

我希望能得到一些关于我使用jquery datepicker的问题的帮助。

有关代码示例问题的信息,请访问此网站: http://codingforums.com/showthread.php?p=929427

基本上,我试图让第1天和第31天工作,并且还没有找到办法做到这一点。他们说这可能是jquery日历中的一个错误。

这是代码。

 //var disabledDays = ['3-31-2010', '3-30-2010', '3-29-2010', '3-28-2010', '3-2-2010', '3-1-2010', '4-1-2010' ];

var checkDays = null;

function noWeekendsOrHolidays(date)    {     //可选:确保日期仅为日期,没有时间部分:     date = new Date(date.getFullYear(),date.getMonth(),date.getDate());

// no point in checking if today is past the given data:
if ( (new Date()).getTime() > date.getTime() ) return [false,'inthepast'];

if ( checkDays == null )
{
 checkDays = [];
 // convert disabledDays to a more reasonable JS form:
 for ( var d = 0; d < disabledDays.length; ++d )
 {
  var p = disabledDays[d].split("-");
  checkDays[d] = new Date( parseInt(p[2]), parseInt(p[0])-1, parseInt(p[1]) );
 }
}

var datetime = date.getTime();
for ( var i = 0; i < checkDays.length; i++) 
{
 if ( checkDays[i].getTime() == datetime ) return [false,'holiday'];
}
return [true,'']; // default CSS style when date is selectable

}

 jQuery(document).ready(function() {
<%
response.write "var theSelectedDay = $.datepicker.parseDate(""y-m-d"", '" & theDate & "');" & vbcr
%>

jQuery('#datepicker2').datepicker({
 dateFormat: 'yy-mm-dd',
 constrainInput: true,
 firstDay: 1,
 defaultDate: theSelectedDay,
 beforeShowDay: noWeekendsOrHolidays,
 onSelect: function(date) {
  endDate = date;
  startDate = theSelectedDay;
 }
});

});

theSelectedDay的格式类似于['2010-3-1']

我已经将时钟设置在计算机上以便对其进行测试。它定于3月1日。

我在主页面上有一个大日历,当用户点击一天时,它会弹出这个日期选择器。就像我说的那样,这一切在2-30天都能正常工作,但不适用于第1天和第31天。

如果他们选择第2天(并且是3月2日),那么当然从周日开始就不会选择星期一。

希望有所帮助。

1 个答案:

答案 0 :(得分:0)

您的意思是valueOf(),而不是getTime()