只是一个关于 datepicker 和 json 的快速问题。我有这个代码:
var dates = {'2013/4/4':'some description' , '2012/6/6':'some other description'};
function date_propogate() {
console.log('in function');
$.getJSON('URL OF JSON', function(data) {
date_items = data.items;
console.log(date_items);
$.each(date_items, function(index, date_item) {
dates.push(date_item.sdate);
});
});
}
$(document).ready(function() {
date_propogate();
$('#datepicker').datepicker({
beforeShowDay: function(date) {
var search = date.getFullYear() + "/" + (date.getMonth() + 1) + "/" + (date.getDate());
if (dates[search]) {
return [true, 'highlight', dates[search] || ''];
}
return [false, '', ''];
}
});
});
JSON 页面返回以下内容:
{"items":[{"sdate":"2013-02-25","edate":"2013-02-27","cost":"200","id":"1"}]}
我有两个显示正常的静态日期,但返回的日期:date_items.sdate 未加载,我收到一条错误消息,提示“无方法:推送”。
我这样做是正确的还是有更好的方法?正如我假设我不能只在页面上使用 php,因为 js 是在 php 之前加载的,对吗?
任何帮助将不胜感激。