2009-07-21 9 views
15

Zend Frameworkのラジオボタンが列に表示されます(1行に1つのオプション)。すべてのラジオオプションが1行に収まるように、マークアップからbrタグを削除するにはどうすればよいですか?Zend_Form_Element_Radioを1行に表示

私のデコレータは以下のとおりです。

private $radioDecorators = array(
    'Label', 
    'ViewHelper', 
    array(array('data' => 'HtmlTag'), array('tag' => 'div', 'class' => 'radio')), 
    array(array('row' => 'HtmlTag'), array('tag' => 'li')), 
); 

答えて

48

あなたはそれを渡し、Zend_Form_Element_RadioオブジェクトにsetSeparatorメソッドを呼び出す必要があります「」。ここでhereからの例です:

例えば:

<?php  

class CustomForm extends Zend_Form 
{ 
    public function init() 
    { 
    $this->setMethod('post'); 
    $this->setAction('user/process'); 
    $gender = new Zend_Form_Element_Radio('gender'); 
    $gender->setLabel('Gender:') 
     ->addMultiOptions(array(
     'male' => 'Male', 
     'female' => 'Female' 
    )) 
     ->setSeparator(''); 
    } 
} 
+0

'' によってラジオ別離を行います。 :)ありがとう。 –

1

はZend_Form_Element_Radio :: setSeparator($セパレーター)メソッドを使用します

$element->setSeparator(''); 

getSeparator(で示すように、 '\ < \ BR />' にセパレータのデフォルト)。

3

使用オプション

array("listsep" => ' ') 

を次のようにこれは、それが動作

+0

setSeparator関数があなたの影響を受けないようです。ありがとう! –

関連する問題