2013-10-08 26 views
1

我在其中一个项目中使用此foundation datepicker组件,但它工作正常,但无法选择当前日期,也不知道代码中出现了什么问题。这里是代码:无法在Foundation DatePicker中选择当前日期

$(function() { 

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

    $('.dpicker').fdatepicker({ 
     format: 'yyyy-mm-dd', 
     onRender: function(date) { 
      return date.valueOf() <= now.valueOf() ? 'disabled' : ''; 
     }, 
     onChangeDate: function(date) { 
      return date.valueOf() <= now.valueOf() ? 'disabled' : ''; 
     } 
    }); 
}); 

而这里是jsFiddle example,有什么帮助吗?

回答

4

您声明的'now'正在从时间开始减少小时数。使用UTC创建它。 此外,

return date.valueOf() <= now.valueOf() ? 'disabled' : ''; 

应该

return date.valueOf() < now.valueOf() ? 'disabled' : ''; 

这里有一个小提琴。 http://jsfiddle.net/gL2A4/

+0

已经尝试过这种方式,并没有工作,因为我无法选择当前的日期,如果我选择当前的一天,目前得到禁用 – Reynier

+0

对不起,回想起来,它看起来像是一个时区事情。 日期:Tue Oct 08 2013 20:00:00 GMT-0400(EDT) Now:Tue Oct 08 2013 00:00:00 GMT-0400(EDT) –

+0

您是否注意到即使您的小提琴不能选择当前日期,如果你选择第二天,那么你甚至无法看到当前日期活动?所以问题仍然存在 – Reynier

相关问题