所以我使用Zend_Form_Element_MultiCheckbox
來顯示一長串複選框。如果我只是echo
的元素,我會得到很多用<br />
標籤分隔的複選框。我想找出一種方法來利用簡單的Zend_Form_Element_MultiCheckbox
,但也顯示爲多列(即<div style="float:left">
中的10個複選框)。我可以做手工,如果我有一個複選框元素的數組,但它不是最乾淨的解決方案:Zend_Form_Element_MultiCheckbox:如何顯示一長列複選框爲列?
<?php
if (count($checkboxes) > 5) {
$columns = array_chunk($checkboxes, count($checkboxes)/2); //two columns
} else {
$columns = array($checkboxes);
}
?>
<div id="checkboxes">
<?php foreach ($columns as $columnOfCheckboxes): ?>
<div style="float:left;">
<?php foreach($columnOfCheckboxes as $checkbox): ?>
<?php echo $checkbox ?> <?php echo $checkbox->getLabel() ?><br />
<?php endforeach; ?>
</div>
<?php endforeach; ?>
</div>
我怎麼能這樣做同樣的事情,並仍然使用Zend_Form_Element_MultiCheckbox
?
我知道如何創建自定義表單元素(和視圖助手),但我不明白你的意思。您已將此視圖助手命名爲已有的zend表單multicheckbox元素。這應該如何工作? – Andrew
我編輯了我的問題來解釋它是如何工作的。 –
我現在明白了。你故意重寫ZF默認值。 – Andrew