【发布时间】:2013-12-28 20:17:13
【问题描述】:
我正在尝试获取一个日期选择器来更新一组不可用的日期。如果我传递一个 PHP 变量,则以下内容有效,但我遇到的问题似乎是正确返回选项的数据(它抛出了一个控制台错误,即无法读取未定义的 0):
jQuery(document).ready(function () {
jQuery('#MyDate').datepicker({
minDate: '+2',
maxDate: new Date(2014, 1, 28),
dateFormat: 'dd-mm-yy',
beforeShowDay: function (date) {
//var array = ["<?php echo $comma_seperated;?>"];
jQuery.ajax({
type: "POST",
url: "/wp-admin/admin-ajax.php",
data: {
action: 'unavail_dates',
unavaildates: '2'
},
success: function (output) {
saveVariable(output);
}
});
function saveVariable(data) {
array = '"' + data + '"';
console.log(array);
var string = jQuery.datepicker.formatDate('yy/mm/dd', date);
return [array.indexOf(string) == -1];
}
},
onSelect: function (dateText) {
jQuery(this).change();
}
})
请注意,控制台日志显示的内容与注释的 var 数组相同。我正在使用一个函数来使用其相应代码中的返回值,但它只是返回一串以逗号分隔的日期并缺少其第一个和最后一个“。例如,2013/12/12”、“2013/12/13 ","2013/12/14
【问题讨论】:
-
问题是你没有从
beforeShowDay返回任何值
标签: php jquery ajax datepicker