0

私は Jquery Weekly Calendar Plugin をいじっています (ここで完全なデモを見ることができます: skedyul.herokuapp.com)

今、私は PHP を使用していくつかのイベントを動的に配置しようとしていますが、JSON の概念にはかなり慣れていません。

これは、JSON にエンコードされる私の例の php 配列です。

<?php 
        $events = array(
            array(
            "id" => 1,
            "start" => date("D M j Y H:i:s "),
            "end" =>  date("D M j Y H:i:s ",strtotime("+30 minutes")),
            "title" => "College Algebra"
            ),
            array(
            "id" => 2,
            "start" => date("D M j Y H:i:s ",strtotime("+30 minutes +1 day")),
            "end" =>  date("D M j Y H:i:s ",strtotime("+45 minutes +1 day")),
            "title" => "Calculus"
            )
        );
?>

そして、いくつかのサンプルデータを含む実際の Javascript コードを次に示します。

<script type="text/javascript">

        function getEventData() {
          var year = new Date().getFullYear();
          var month = new Date().getMonth();
          var day = new Date().getDate();
          console.log(new Date(year, month, day, 12));
          return {
             events : [
                {
                   "id":1,
                   "start": new Date(year, month, day, 12),
                   "end": new Date(year, month, day, 13, 30),
                   "title":"College Algebra",
                },
                {
                   "id":2,
                   "start": new Date(year, month, day, 14),
                   "end": new Date(year, month, day, 14, 45),
                   "title":"Statistics and Probability"
                }
             ]
          };
       }

そしてここで、上記のJavascriptをこれに変更しました(jsonでエンコードされたphp連想配列を入れます)

<script type="text/javascript">

            function getEventData() {
              var year = new Date().getFullYear();
              var month = new Date().getMonth();
              var day = new Date().getDate();
              console.log(new Date(year, month, day, 12));
              return {
                 events : <?php echo json_encode($events)?>
              };
           }
</script>

エラーを吐き出さずに動作しているようですが、問題は日付に関するものです。カレンダーにうまく表示されない…

PHP から JSON を日付とともに正しく渡すにはどうすればよいですか? ありがとうございました :)

4

1 に答える 1

1

考慮してください: http://code.google.com/p/datejsのdate.js Date.parse()またはDate.parseExact()
を 使用でき ます あなたの場合、 Date.parseExact(dateString, "d MMM d yyyy HH:mm:ss")

ページに date.js を含めます。

<script src="http://yoursite/path/to/date.js"></script>

次に、次のことを試してください...

var dateobj = Date.parseExact(dateString, "d MMM d yyyy HH:mm:ss")
alert(dateobj.toString());

日付のフォーマットについては、 http://code.google.com/p/datejs/wiki/FormatSpecifiersをご覧ください。

于 2012-10-31T07:53:34.027 に答える