0

calEvent.Url に日付を追加するのに問題があります。dayClick でも同じことがうまく機能しますが、同じコードを calEvent.Url に追加しようとすると、予定がカレンダーから消えてしまいます。URL を処理して正しいアクションに誘導するために、Global.asax にルートを設定しました。これは dayClick では正常に機能していますが、イベントのクリックでは機能していません。どんな助けでも大歓迎です!

<script type="text/javascript">
$(document).ready(function () {
    $('#calendar').fullCalendar({
        theme: false,
        header: {
            left: 'prev,next today',
            center: 'title',
            right: 'agendaDay, agendaWeek, month'

        },

        defaultView: 'month',
        editable: false,
        allDay: true,
        eventClick: function (calEvent, jsEvent, view) {

            window.location.href = 'BrowseCal/' +
                 date.getDate() + '-' +
                    (date.getMonth() + 1) + '-' + // months are zero based
                         date.getFullYear();

            // change the border color just for fun
            $(this).css('border-color', 'red');

        },
        dayClick: function (date, allDay, jsEvent, view) {

            if (allDay) {

                window.location.href = 'BrowseCal/' +
                 date.getDate() + '-' +
                    (date.getMonth() + 1) + '-' + // months are zero based
                         date.getFullYear();


            }

        },

        events: function (start, end, callback, date) {
            // do some asynchronous ajax
            contentType: "application/json; charset=utf-8",
            $.getJSON("/WhatsOn/CalendarData/",

                function (result, date) {
                    if (result != null) {
                        for (i in result) {
                            var calEvent = result[i];

                            calEvent.start = new Date(parseInt(calEvent.start.replace("/Date(", "").replace(")/", ""), 10));
                            calEvent.end = new Date(parseInt(calEvent.end.replace("/Date(", "").replace(")/", ""), 10));

                            **calEvent.Url = 'BrowseCal/' + date.getDate() + '-' + (date.getMonth() + 1) + '-' + date.getFullTear();**


                        }
                    }

                    var calevents = result;
                    // then, pass the CalEvent array to the callback
                    callback(calevents);


                });


        }

    });
});
4

1 に答える 1

0

コードを*でマークした場所では、日付が定義されていないようです。start.getDate()、start.getMonth() など、それまたは end.getDate() などは必要ありませんか?

于 2011-09-16T14:58:34.467 に答える