如何在jQuery中将PHP变量传递给Datepicker?

我试图在datepicker中设置一个默认日期,我将一个变量传递给PHP中的html。 这是我的控制文件和表单的简化版本:

控制文件:

 $default_date]); ?> 

这是表格:

      jQuery UI Datepicker - Default functionality      $(function() { $("#mydate").datepicker ({ onSelect: function(dateText, inst) { var dateAsString = dateText; var date = $('#mydate').val(); } }) //.datepicker("setDate",new Date()); .datepicker("setDate",new Date(2014,10-1,17)); });    

Date:

如果我使用setDate的注释行,我会得到当前日期。 如果我使用我的线路,我会在7天前收到日期。 当我在表单的顶部打印$ default_date时,我得到了2014,10-1,17,但我无法确定将其传递到脚本中。 其他人建议使用

使用echo是要走的路。
我宁愿把它放在脚本而不是输入中
我假设$default_date === "2014,10-1,17"

 $(function() { $("#mydate").datepicker ({ onSelect: function(dateText, inst) { var dateAsString = dateText; var date = $('#mydate').val(); } }) //.datepicker("setDate",new Date()); .datepicker("setDate",new Date(  )); }; 

编辑:
正如rss81注意到的那样,解构字符串以重建完全相同的字符串是相当愚蠢的。 我不知道我在想什么……
不过,为了教育目的,我会这样做。

爆炸字符串使我们能够获得由昏迷分隔的每个块的字符串数组。 您可以使用它来重新排序字符串。 例如,如果你想将“2014,10-1,17”变换为“10-1,2014,17”,这将由echo $date[1].','.$date[0].','.$date[2]

Echo使我们可以随意输出html页面,使其变得动态。 所以这里我们通过php预处理.datepicker()的日期参数。

更好的解决方案是将返回的PHP日期变量分配给jQuery变量。

这可以通过以下方式完成

 var phpDate = ""; 

现在,您需要将其分配给datepicker

 $("#mydate").datepicker("setDate",phpDate); 

这有效……

只需输入相对值即可

  

这将使用date日期值初始化datepicker

希望这有助于我的道歉,如果这不是你想要的

您可以在脚本中使用 ,但在正文中,在某些display:none元素中使用id。 然后只是从该元素获取javascript的日期并设置为datapicker

您可以在html元素的数据属性中传递$ default_date值。 例如:

 

之后,您可以使用Jquery提取它,如下所示:

 var date = $("#myDate").data("date"); 

你需要在javascript部分设置日期格式,因为它是创建和日期问题。

你可以在下面给出它

 $("#datepicker").datepicker("option", "dateFormat", "yy-mm-dd ");