16 Stimmen

Zend_Form_Element_Radio in einer Zeile anzeigen

Die Optionsfelder in Zend Framework werden in einer Spalte angezeigt (eine Option pro Zeile). Wie kann ich das br-Tag aus dem Markup entfernen, so dass alle Radio-Optionen in einer Zeile bleiben?

Meine Dekorateure sind:

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

51voto

Edward Dale Punkte 28689

Man muss die setSeparator Methode auf dem Zend_Form_Element_Radio Objekt aufrufen, und ihr '' übergeben. Hier ist ein Beispiel von aquí :

<?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('');
  }
}

3voto

Optionen wie folgt verwenden

array("listsep" => ' ')

Dadurch wird die Trennung des Radios durch ' '

1voto

hobodave Punkte 28128

Verwenden Sie die Zend_Form_Element_Radio::setSeparator($separator) Methode:

z.B..

$element->setSeparator('');

Das Trennzeichen ist standardmäßig '\<. \br />' wie von getSeparator() angezeigt.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X