Formヘルパーのinputタグのdiv/labelなどの設定

Formヘルパーのinputではデフォルトでは以下のようにdivで囲われて、labelが付与されて出力されます。
CSSのフレームワークなどであらかじめ決まったスタイルがある場合に便利に作られています。恐らく、それを見越してのデフォルトでのフォーミングだと思いますが。
echo $this->Form->input( 'field', array()); <!-- HTML -> <div class="input text"> <label for="field">Field</label> <input id="field" type="text" name="data[field]"> </div>
divやlabelの出力をしない
ためには、それぞれにfalseをオプションとして設定します。これで、inputを囲っていたdiv要素が出力されなくなり、前のlabelも出力されなくなります。
echo $this->Form->input( 'field', array( 'label' => false, // labelを出力しない 'div' => false // divで囲わない )); <!-- HTML -> <input id="field" type="text" name="data[field]">
divやlabelのclassやテキストを設定する
こちらもオプションとしてそれぞれclassやtextを設定することで可能です。
echo $this->Form->input('field', array( 'label' => array( 'text' => 'message', // labelに表示するテキスト 'class' => 'control-label' // labelタグに付与するclass ), 'div' => array( 'class' => 'form-group' // divタグに付与するclass ), 'class' => 'form-control' // inputタグに付与するclass )); <!-- HTML -> <div class="form-group"> <label class="control-label" for="formdata3Field">message</label> <input id="formdata3Field" class="form-control" type="text" name="data[formdata3][field]"> </div>
その他idなども設定可能です。
その他
'class'には複数指定する場合があると思いますが、配列にするのではなくそれぞれをスペース区切りで書くようにして下さい。classに対してtrim処理が行われるらしく、配列に対してはtrimできません と怒られます。
Warning (2): trim() expects parameter 1 to be string, array given [CORE/Cake/View/Helper.php, line 789]
関連記事
-
-
バリデーション前後に処理を追加できる「beforeValidate」「afterValidate」
CakePHPでは、「beforeValidate」「afterValidate」というバリデーション処理の前後で追加の処理を実装できるコールバック関数が用意されています。 beforeVali
-
-
recursive設定によるfind()性能改善
CakePHPでは、モデルにアソシエーションを設定している場合、recursive(=>joinする階層)はデフォルトで0に設定されています。「recursiveゼロ」の意味するところとは、「1跨ぎま
-
-
コントローラ内でバリデーション処理を呼び出す
CakePHPでは、saveメソッドの際にバリデーション処理も自動で行われますが、save処理と切り離してバリデーションを行うこともできます。このときは、save時と若干異なる処理体系になります。
-
-
ログローテーション
CakePHP 2.xではbootstrap.php内にあらかじめアプリケーションログの設定が書かれています。2.xで日付ごとにログファイルが切り替わるよう設定してみました。 日ごとにログを切り替え
-
-
SQLクエリーをログに出力する
SQLのクエリーをデバッグするには、Debug Kitを使用すればできますが、デバッグログと一緒に出したいのでやり方を調査してみました。 別々のログやビューでみるのもいいですが、秒単位で実行される処
-
-
radioボタンを実装
Radioボタンの実装は、セレクトボックスとほぼ同じです。 個人的にはラジオボタンをすすんで使用することは少ないのですが、2択くらいの選択肢であれば非常に便利ですよね。 今回は、その実装方法 デモ
-
-
Blowfishを使用してハッシュ化する
使用方法 Blowfishを採用してハッシュ化を行う場合、Securityクラスのhashメソッドを呼び出します。第2引数に'blowfish'を指定し、第3引数を指定しないもしくはfalseにしま
-
-
CSS/JSをひとまとめにして軽量化するプラグイン「Minify plugin for CakePHP」
「Minify plugin for CakePHP」は、インクルードするCSSもしくはJSファイルをひとまとめにしてキャッシュ化してくれるプラグインです。 導入 ダウンロード・解凍し
-
-
Js/Cssファイルの読み込みや出力する方法
CakePHPのHTMLヘルパーにはjsファイルやcssファイルを読み込むためのメソッドが用意されています。ファイルを読み込むのに加えて、出力先を複数指定できるようになっています。 また、インライン
-
-
CakePHP 2.x インストール
現在まで私が商用・非商用にリリースしているCakePHPアプリケーションは全て1.3.xベースで作成しています。 まだまだロードマップ的には大丈夫そうですが、お客さん向けに納品しているアプリケーショ
Comment
知りたかったこと
RT @akagane99: 【netcommons3開発】参考になった。 Formヘルパーのinputタグのdiv/labelなどの設定 http://t.co/gaqEBpWmDu #netcommons #cakephp
【netcommons3開発】参考になった。 Formヘルパーのinputタグのdiv/labelなどの設定 http://t.co/gaqEBpWmDu #netcommons #cakephp