16

Zend Framework 中的单选按钮显示在一列中(每行一个选项)。如何从标记中删除 br 标签,以便所有单选选项保持在一行?

我的装饰器是:

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

3 回答 3

51

您需要在 Zend_Form_Element_Radio 对象上调用 setSeparator 方法,并传递它''。这是这里的一个例子:

<?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('');
  }
}
于 2009-07-21T22:40:53.643 回答
3

使用选项如下

array("listsep" => ' ')

这将通过 ' ' 进行无线电分隔

于 2009-08-28T14:25:14.287 回答
1

使用 Zend_Form_Element_Radio::setSeparator($separator) 方法:

例如

$element->setSeparator('');

分隔符默认为 '\<\br />',如 getSeparator() 所示。

于 2009-07-21T22:41:15.560 回答