2009-08-12 8 views
5

スタイリングIは、2つのテーブルを有する:HABTMテーブルによって互いに関連する「レストラン」と「ジャンル」CakePHPのフォームヘルパー - HABTM複数のチェックボックスは

テーブル料理は、特定の固定されたエントリを有する - 54数

レストランでは、いくつでも料理を楽しむことができます。アプリケーションのベーキングには、これは複数選択で来ました。私はチェックボックスを使用したいので、配列( 'type' => 'select'、 'multiple' => 'checkbox')を使用してチェックボックスに変換しました。

ここでは、このチェックボックスが4つの列に表示される方法を、以下のスクリーンショットに示すようにスタイルしたいと考えています。

img2.pict。 COM/82/BC/A4/1453459/0/200908111511.png

echo $form->input('Cuisine', array('type' => 'select', 'multiple' => 'checkbox')); 

http://img2.pict.com/1a/a3/0a/1453457/0/200908121509.png

を次のように上記のコードは、私は次のことを試してみました各要素の周りに多くのdivのを生成します。

echo $form->input('Cuisine', array('type' => 'select', 'multiple' => 'checkbox', 'div' => false, 'label' => false)); 

このコードでは、外部のdivとラベルのみが削除されます。私は内部を制御することができません

<div class="checkbox"> 
<label for="CuisineCuisine2">Andhra</label> 

単一のチェックボックスの周囲に表示されます。

FormHelperを使用して内部divにクラスを追加したり削除したりするには、カスタムスタイルを使用できますか? または、このHABTMテーブルを作成して、私が望む効果を得るための他の方法はありますか?

答えて

4

代わりに、$ form-> select()を実行してスタイルやクラスの属性を適用して、好みに合わせることができます。

divとラベルを削除する場合は、$ form-> input()関数を使用しないと意味があるようです。

2

DIV要素をCSSでスタイル設定することができます。あなたはデフォルトのケーキでは、この

$this->Form->input("hello_test",array('type'=>'checkbox','div'=>'class_name')); 

のような内部のdiv要素にクラスを削除するか、または与えることができます

<style> 
div.input div.checkbox { 
    float: left; 
    width: 50%; 
} 
</style> 
1

は使用しています。例えば型クラスを - タイプはclass="checkbox"

、その後のチェックボックスであります