代码之家  ›  专栏  ›  技术社区  ›  Richard Knop

在一条线上显示Zend-Form-Element无线电

  •  15
  • Richard Knop  · 技术社区  · 15 年前

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

    我的装饰师是:

    private $radioDecorators = array(
        'Label',
        'ViewHelper',
        array(array('data' => 'HtmlTag'), array('tag' => 'div', 'class' => 'radio')),
        array(array('row' => 'HtmlTag'), array('tag' => 'li')),
    );
    
    3 回复  |  直到 13 年前
        1
  •  50
  •   ReactiveRaven NarutoBruto    13 年前

    您需要对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('');
      }
    }
    
        2
  •  3
  •   Raj    13 年前

    使用选项如下

    array("listsep" => ' ')
    

    这将使无线电分离

        3
  •  1
  •   hobodave    15 年前

    使用zend_form_element_radio::setseparator($separator)方法:

    例如

    $element->setSeparator('');
    

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