完整日历+事件+事件删除+ Ajax -不发送日期值



我正在使用jquery完整日历,我试图保存一个事件,当它被丢弃。

   $('calendar').fullCalendar
            ({
                theme: true,
                defaultView: 'agendaWeek',
                columnFormat:
                {
                    week: "ddd"
                },
                header: false,
                allDaySlot: false,
                minTime: '6am',
                maxTime: '9pm',
                editable: true,
                droppable: true,
                drop: function (date, allDay)
                { // this function is called when something is dropped
                    // retrieve the dropped element's stored Event Object
                    var originalEventObject = $(this).data('eventObject');
                    // we need to copy it, so that multiple events don't have a reference to the same object
                    var copiedEventObject = $.extend({}, originalEventObject);
                    // assign it the date that was reported
                    copiedEventObject.start = date;
                    copiedEventObject.allDay = allDay;
                    // render the event on the calendar
                    // the last `true` argument determines if the event "sticks" (http://arshaw.com/fullcalendar/docs/event_rendering/renderEvent/)
                    $('calendar').fullCalendar('renderEvent', copiedEventObject, true);


                },
                eventDrop: function (event, dayDelta, minuteDelta, allDay, revertFunc, jsEvent, ui, view)
                {
                    var a = event.start;
                    var b = event.end
                    $.ajax
                    ({
                        url: MyURL,
                        type: 'Post',
                        data: { 'Start': a, 'End': b },
                        success: function (response)
                        {
                        }
                    });
                }
                )};

当我警告变量"a" &"b"它告诉我在这些变量中有一个时间

  [HttpPost]
        public void CreateSlot(string Start, string End)
        {
        }

我知道它正在到达这个方法,但它从不发送任何参数,它们总是空的。

知道为什么吗?

编辑

它似乎是物体或其他什么东西。我在drop方法中尝试了一下,看看是否发生了同样的事情,发现了同样的事情

但是当我这样做的时候

 drop: function (date, allDay)
{
      $.ajax
                    ({
                        url: MyURL,
                        type: 'Post',
                        data: { 'Start': date.getTime() },
                        success: function (response)
                        {
                        }
                    });

}

没有问题。所以我想知道如果asp.net mvc不能找到绑定日期对象。我觉得奇怪的是我用了一个字符串

将日期转换为c#支持的格式。

   eventDrop: function (event, dayDelta, minuteDelta, allDay, revertFunc, jsEvent, ui, view)
            {
                var a= $('#calendar').fullCalendar('formatDate', event.start, "yyyy-MM-dd HH:mm:ss");
                var b;
                if (event.end != null||event.end != undefined) {
                    b = $('#calendar').fullCalendar('formatDate', event.end, "yyyy-MM-dd HH:mm:ss");
                }

                $.ajax
                ({
                    url: MyURL,
                    type: 'Post',
                    data: { 'Start': a, 'End': b },
                    success: function (response)
                    {
                    },
                    error: function (msg) {
                        revertFunc();
                    },
                });

            },


 [HttpPost]
    public void CreateSlot(DateTime Start, DateTime End)
    {
    }

是否有可能,因为你没有列出json作为数据类型在你的ajax调用它没有被传递的方式(因此你的方法没有得到正确的parms)?

$.ajax
     ({
       url: MyURL,
       type: 'Post',
       data: { 'Start': a, 'End': b },
       dataType: 'json',.....

相关内容

  • 没有找到相关文章

最新更新