日付ピッカー カレンダーでクリックできる一連のイベントをリンクしています。関数の日付形式は正しくonSelect
機能しています (dd-mm-yy です)。これで、2013 年 8 月 6 日の活動 (2013 年 6 月 8 日) をクリックしてカレンダーで読むことができます。
一方beforeshowday
、クラス「ハイライト」を要素に割り当てる関数は、間違った日付形式を使用します (dd と mm を切り替えます)。td
そのため、カレンダー上で強調表示されている は、クリック可能で作業中td
のアクティビティではなく、間違った月に表示されます。
私のコードを見てください:
var acts = [
{ Title: "En we doen eki wild", Date: new Date("08/06/2013"), Description: "Beschrijving van deze activiteit komt hier te staan" },
{ Title: "Zotte petanque!", Date: new Date("10/06/2013"), Description: ".. en van deze hier" },
{ Title: "Les :-(", Date: new Date("11/06/2013"), Description: "Beschrijving van activiteit" }
];
$("#cal").datepicker({
dateFormat: 'dd-mm-yy',
beforeShowDay: function (date) {
var result = [true, '', null];
var matching = $.grep(acts, function (event) {
return event.Date.valueOf() === date.valueOf();
});
if (matching.length) {
result = [true, 'highlight', null];
}
return result;
},
onSelect: function(dateText) {
var date,
selectedDate = new Date(dateText),
i = 0,
event = null;
while (i < acts.length && !event) {
date = acts[i].Date;
if (selectedDate.valueOf() === date.valueOf()) {
event = acts[i];
}
i++;
}
if (event) {
$("#acts h3").html(event.Title);
$("#acts h4").html(event.Date);
$("#acts .maintext").html(event.Description);
}
},
minDate: 1,
});
これを修正する方法を知っている人はいますか? ありがとう!
JSFiddle の例: http://jsfiddle.net/JT3hp/