[CakePHP] 入力フォームの出力(オプション一覧)

CakePHPのフォームヘルパーを使って入力フォームを作成する方法についてです。
CakePHPのフォームヘルパーはとても便利で、必要項目を配列で指定するだけでフォームが生成されるので、一度使うと手放せなくなります。
labelの出力など、少々癖もありますが、一度使い方を把握すれば使いこなせます。
書式は簡単で、引数は2つのみです。
書式
echo $this->Form->input(‘フィールド名’,’オプション’);
オプションは多数ありますので、第二引数に指定していきましょう。
具体的な使い方の例です。
1 2 3 4 5 6 |
echo $this->Form->input( 'sample', array( 'type' => 'text', 'label' => 'サンプル', 'div' => false, 'class'=>'sample' )); |
CakePHPの入力フォームには下記のような多数のオプション項目が用意されています。
これだけのオプションがあるので、大抵のことはオプションでできると思います。
オプション名 | 内容 |
---|---|
type | インプットタグの種別を設定。 「text」「textarea」「select」「radio」「checkbox」「password」「file」「date」「time」「hidden」の設定が可能。 |
before | 入力タグの前に挿入する文字列を設定 |
after | 入力タグの後に挿入する文字列を設定 |
between | ラベルタグと入力タグの間に挿入する文字列を指定 |
separetor | typeがradioの時、各項目の間に挿入する文字列を設定 |
options | typeがselectとradioの時、表示させる内容を設定 ・配列の場合は表示とvalueが一致 ・連想配列の場合は値が表示、キーがvalue |
multiple | typeがselectの時、trueを設定すると複数項目の選択が可能 |
maxlength | typeがtextとtextareaの時、入力できる文字列の最大値を設定 |
div | 入力フォームを囲むdivタグを指定。falseを設定すると出力無し。 |
class | タグに付与するクラス名を設定 |
label | 入力フォームのlabelタグを指定。falseを設定すると出力無し。 |
legend | typeがradioの時、要素を囲むlegendタグを出力。falseを設定すると出力無し。 |
id | 独自のidを指定。初期値はモデル名 フィールド名 |
default | typeがselectの時、最初に選択される値を指定 |
selected | typeがselect date time datetime で選択されている項目を指定 |
error | エラー発生時のメッセージを設定 |
cols | typeがtextareaの時、列の幅を設定 |
rows | typeがtextareaの時、行数を設定 |
empty | typeがselect date time datetimeの時、trueを設定すると空白が選択可能 |
timeFormat | 12/24時間制を選択。デフォルトは12。noneの設定で非表示 |
dateFormat | 年月日の表示形式を設定。YMD MDY DMYの3種類の設定が可能 |
monthNames | 月を名前表示にする場合trueを設定 |
- [CakePHP] Formヘルパーのinputでdivやlabelをカスタマイズする方法
- [CakePHP] Formでテーブル形式のデータを一括保存する方法
- [jQuery] 子ウィンドウのチェックボックスの値を親ウィンドウに渡す方法
- [Vue.js] フォーム入力バインディング一覧
- [jQuery] フォームの値とテキストを取得する方法