初めての[CakePHP2.x]での開発、そして挫折するまで日記~その30 select boxのdateで空白の値を使う

CakePHP

CakePHP

CakePHPの内容を書いてもう30回目なんですね~

こんなに続くとは・・・タイトル変更も考えないとな

今回は、セレクトボックスで日付を使うときに

空白(NULL値)が必要になったので

その設定方法です。

スポンサードリンク

セレクトボックスで日付の設定の仕方

CakePHPでセレクトボックスの作成は

初めての[CakePHP2.x]での開発、そして挫折するまで日記~その16 日付のセレクトボックス

上記でやったのですが、

<?php
      echo $this->Form->input('field', array(
                                        'type' => 'date',
                                        'dateFormat' => 'YMD',
                                        'monthNames' => false
                                       ));
?>

こんな感じで作ってました。

データ入力するときに日付を入れない時があるので

その場合はNULLが入力できるようにしたい。

でも、このままだとフォーマットが決まっているのでどうしようと思ってました。

Google先生に聞いたところ、解決策がこちらに載ってました。

Cakephpでdateタイプなselectに空の値を設定するメモ

NULLを設定できるんですね。

上記のサイトのようにselectedにNULLを付けると

入力データを反映できないので下記のようにしました。

<?php 
     echo $this->Form->input('delivery_date', array(
                                               'label' => false,
                                               'type' => 'date',
                                               'dateFormat' => 'YMD',
                                               'monthNames' => false,
                                               'empty'=>array(0 => '--')
                                             ));
?>

これで、一番上の値が空白になってNULLを入力することができます。

最初はjQueryでチェックボタンを付けて

チェックしたらNULL

チェックを外したらセレクトボックスを使えるという風にしてたんですが

サーバーにおいたら動かなったので

簡単な今回の方法にしました。

CakePHP2 実践入門 (WEB DB PRESS plus)

新品価格
¥3,110から
(2015/1/27 23:08時点)

スポンサードリンク

コメントを残す

サブコンテンツ

このページの先頭へ