2012-03-03 66 views
5

我的數據庫「cars」和「car_types」中有兩個表。 「汽車」表通過「car_type_id」引用「car_types」。例如「car_types」有2個字段「id」和「car_type」。它還有3個條目「新」,「二手經銷商」,「私人使用」。如何在我的視圖中將這3個條目顯示爲複選框。如何從類型select-multiple的表單輸入中刪除包裝div

我試圖從調節輸出:

foreach ($car_types as $car_type)      
{ 
    $car_type_new[$car_type['CarType']['id']]=$car_type['CarType']['car_type']; 
}     
echo $this->Form->input('Car.car_type_id',array('div'=>false,'multiple'=>'checkbox','options'=>$car_type_new,'style'=>"margin-left:20px; padding:0;")); 

我也想去掉圍繞每個複選框包裝股利。

每個複選框是由窗體助手像這樣輸出,即使在div =>假選項設置:

<input type="hidden" id="CarCarTypeId" value="" name="data[Car][car_type_id]"> 

<div class="checkbox"><input type="checkbox" id="CarCarTypeId1" value="1" name="data[Car][car_type_id][]"><label for="CarCarTypeId1">New</label></div> 
<div class="checkbox"><input type="checkbox" id="CarCarTypeId2" value="2" name="data[Car][car_type_id][]"><label for="CarCarTypeId2">Used Dealer</label></div> 
<div class="checkbox"><input type="checkbox" id="CarCarTypeId3" value="3" name="data[Car][car_type_id][]"><label for="CarCarTypeId3">Used Private 
</label></div> 

在div =>假選項僅刪除周圍複選框的整個集合包裹在div ,不是每個複選框。

,我怎麼可能會刪除它周圍的每個複選框包裹在div什麼想法?如果我做錯了,請告訴我。

回答

2

看一下API,可以使用afterbefore陣列選項來控制<input><label>對之前和之後的內容。這裏是documentation on the input functionAPI

或者,你可以使用的checkbox functionAPI)在Form助手繞過它

+0

感謝了迅速的回答。 – 2012-03-03 12:26:34

5

我知道這個問題是關於CakePHP的1.3,但我發現這個搜索時的互聯網,所以我會分享爲我工作的解決方案。

您可以通過相應的關鍵$optionsinput()輔助函數:

'div'=>false 

更多信息:http://api.cakephp.org/2.5/class-FormHelper.html#_input

相關問題