1

我正在开发一个 CodeIgniter 项目,我是 ajax/jquery 的新手。我正在使用全日历。在我看来,我想发布事件的日期,然后将其发布到控制器。这是我的 CalendarView.php

$(document).ready(function() {
    $('#calendar').fullCalendar({
        dayClick: function(date, allDay, jsEvent, view) {  
               add_event(date);
        },
        events: 'https://www.google.com/calendar/feeds/myLogin%40gmail.com/public/basic'
    });
});

//Ajax call
function add_event(date) { 
    $.ajax({
            type: 'POST',
            url: '<?php echo site_url()."/welcome/add_event/"; ?>',
                        data:{ eventsJson: JSON.stringify(date) },
                        dataType : "json",
            success: function (response) {
                alert(response);
            }
    });
}​

在我的控制器中,这是我所做的:

$date= $this->input->post('data');

谁能帮助我?

4

2 回答 2

0

我对codelgnitor不太了解,但是数据以对象形式到达,您可以将日期字符串检索为 $_POST['data']['eventsJson']

虽然我不认为“eventsJson”是一个非常直观的名称,但可能应该改为“date”;-)

于 2012-08-29T15:52:08.663 回答
0

在控制器中接收eventsJSON你会做的:

$eventsJSON = json_decode($this->input->post('eventsJSON'), TRUE);

现在$eventsJSON包含一个包含您的 json 数据的数组。但是,如果您只发回不需要将其作为 JSON 传回的日期,那么 pluseventsJSON是一个坏名字。在这种情况下,您可以简单地更改 ajax 调用的数据部分,例如:

data: 'date='+date,

在你的控制器中:

$date = $this->input->post('date');
于 2012-08-29T15:54:34.577 回答