jqueryのfullcalendarをZFアプリケーションに組み込みました。カレンダーを私のビューに表示させることはできますが、fullcalendarのeventsパラメーターにJSON URLを追加してイベントデータを送信しようとすると、JSONストリングで発生したすべてがブラウザーに出力されます。私のイベントパラメータのURLは、私はJSONエンコードされたデータを作成し、コントローラへのパスがZend Frameworkでfullcalendarでイベントデータをレンダリングする
<?php
$this->headLink()->appendStylesheet('/styles/module/urpower/sfa/fullcalendar.css');
$this->headLink()->appendStylesheet('/styles/module/urpower/sfa/jquery-ui-1.8.16.custom.css');
$this->headScript()->prependScript(
" $(document).ready(function() {
$('#calendar').fullCalendar({
header: {
left: 'prev,next today',
center: 'title',
right: 'month,agendaWeek,agendaDay'
},
events: '/urpower/sfa/calendar',
theme: true,
});
});
");
$this->headScript()->appendFile('/scripts/fullcalendar/fullcalendar.min.js');
?>
<div id='calendar'></div>
です:
$sfaCalendar = new Model_Exchange();
$sfaCalendar->getCalendarEntries($startDateTime,$endDateTime,'Calendar');
$this->_helper->json($sfaCalendar->data);
はここに私のビュースクリプトです:
ここに私のコントローラ内の関連するコードです。
私のJSON文字列の妥当性を確認したところ、うまく見えました。 fullcalendarが私のデータをつかんでカレンダーに入れない理由は何ですか?
[
{
"title":"Add notes to Innotas notes",
"start":"2012-01-02T16:30:00Z"
},
{
"title":"Test appointment #1",
"start":"2012-01-03T21:00:00Z"
},
{
"title":"Test appointment #2",
"start":"2012-01-03T22:00:00Z"
},
{
"title":"Test appointment #3",
"start":"2012-01-03T22:30:00Z"
},
{
"title":"Add notes to Innotas notes",
"start":"2012-01-09T16:30:00Z"
},
{
"title":"Add notes to Innotas notes",
"start":"2012-01-16T16:30:00Z"
},
{
"title":"SFA Phase 2 - status, testing, etc.",
"start":"2012-01-19T18:30:00Z"
},
{
"title":"Add notes to Innotas notes",
"start":"2012-01-23T16:30:00Z"
},
{
"title":"RLK Integration",
"start":"2012-01-23T17:00:00Z"
},
{
"title":"FW: Quarterly Employee Gathering",
"start":"2012-01-27T17:30:00Z"
},
{
"title":"Meeting with KAREN DUFFY X423 ALT # DI\/PUMPKIN RIDGE GOLF CLUB",
"start":"2012-01-30T14:15:00Z"
},
{
"title":"Add notes to Innotas notes",
"start":"2012-01-30T16:30:00Z"
}
]
ありがとう:
は、ここに私のJSONです!
JSエラーはありますか?私は 'fullcalendar.min.js'に' prependFile() 'を使うべきだと思うので、スクリプトブロックの前に含まれています。 – Phil
Phil、いいえ、JSエラーはなく、JSON文字列だけがブラウザに吐き出されます。また、min.jsにプリペンドファイルを使用するように変更してみましたが、変更はありません。私は本当に '$ this-> _ helper-> json($ sfaCalendar-> data);'が実行されるとすぐに、コントローラから抜け出せないと思っています。開発者のツールバーを使用して、JSON文字列を表示しているページからJSを表示しようとすると、私のカレンダーコードは表示されません。実際はJSもありません。コントローラのヘルパーラインをコメントアウトすると、カレンダーは表示されますが、データは表示されません。 – Hunter
@philが答えを見つけました。 – RockyFord