如何在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 ");