2015-10-08 122 views
0

我使用流行的JQuery UI Datepicker在我的网站上添加/修改事件。我在使用setDate获取日期时出现问题。无论我做什么,错误的日期似乎总是显示出来。下面是我尝试过的一些各种各样的事情:JQuery UI Datepicker SetDate

的日期显示为1970年1月17日时,它应该是2015年10月15日,这是我需要它的工作,用PHP:

$(function() { 
     var date = new Date(<?php echo strtotime($date); ?>); 
     $("#date").datepicker(); 
     $("#date").datepicker("setDate", date); 
     $("#date").datepicker("option", "showAnim", "slideDown"); 
    }); 

这样做的日期有不一致的值,无论您设置的日期如何,日期总是错误的,但没有任何模式。

$(function() { 
     var date = new Date(2015, 10, 15); 
     $("#date").datepicker(); 
     $("#date").datepicker("setDate", date); 
     $("#date").datepicker("option", "showAnim", "slideDown"); 
    }); 

回答

0

我以前也曾尝试过,但忘记在PHP中加引号。现在,它的工作原理:给定的只有一个参数时

<script> 
    $(function() { 
     $("#date").datepicker(); 
     $("#date").datepicker("setDate", "<?php echo $date ?>"); 
     $("#date").datepicker("option", "showAnim", "slideDown"); 
    }); 
</script> 
1

JavaScript的Date对象的构造函数采用毫秒。

PHP函数strtotime()返回Unix Timestamp,自1970-01-01以来的秒数。

如果将时间戳乘以1,000,则会得到一个合适的值以传递给构造函数Date

var date = new Date(<?php echo (strtotime($date) * 1000); ?>);