我需要帮助了解我实际上哪里出错了。
所以我正在使用 jQueryUI 的日期选择器http://jqueryui.com/datepicker/。
我使用了本教程的一部分:http ://www.phpeveryday.com/articles/jQuery-UI-AJAX-JSON-Datepicker-P1029.html
我正在使用 AJAX 查询数据库,因此它只允许数据库中的日期。以下是返回的 JSON:
{"COLUMNS":["APPOINTMENT_DATE"],"DATA":[["July, 29 2013 00:00:00"]]}
下面是我的整个 JavaScript:
$(document).ready(function () {
var months = [], days = [];
$.ajax({
type: 'get',
url: 'cfc/datepicker.cfc?ReturnFormat=json',
data: {
method: 'getDates',
todayDate: '07-29-2013'
},
contentType: 'json',
dataType: 'json',
success: function(response) {
for (x = 0; x < response.DATA.length; x++) {
months.push(response.DATA[x].month);
days.push(response.DATA[x].day);
}
}
});
function addDates(date){
//Weekends are NOT selectable
if (date.getDay() == 0 || date.getDay() == 6) {
return [false, ""];
}
//Using AJAX call above, all RETURNED dates are selectable
for (x = 0; x < days.length; x++) {
if (date.getMonth() == months[x] - 1 &&
date.getDate() == days[x]) {
return [true, ""];
}
}
//If dates are not from above, they are NOT selectable
return [false, ""];
}
var DP_options = {
beforeShowDay: addDates
// minDate: "+1"
};
$("#dateInput").datepicker(DP_options);
});
我了解 addDates 函数下的所有内容。我遇到的问题是 AJAX 调用。我可以得到回复,这是我遇到困难的成功功能。它应该使用 JSON 响应并将这些变量推送到顶部的months
和变量,并且 addDates 函数将使用这些变量来启用它们。days
如何将 JSON 响应中的信息推送到months
和days
变量?还是我错过了一步?