ZendFramework - Как создать optgroup и там вариант с помощью помощников вида? - PullRequest
11 голосов
/ 22 февраля 2012

Как мне создать это с помощью $ this-> formSelect ()?

<select multiple>
    <optgroup label="a">
       <option>1</option> 
       <option>2</option>
    </optgroup>
    <optgroup label="b">
       <option>1</option> 
    </optgroup>
</select>

Ответы [ 2 ]

14 голосов
/ 12 октября 2013

В Zend Framework 2 это можно сделать следующим образом:

$this->add(array(
        'name'=>'Test',
        'type'=>'Zend\Form\Element\Select',
        'attributes'=>array('type'=>'select','required'=>'required'),
        'options'=>array(
            'label'=>'Test',
            'value_options'=>array('fruits'=>array('label'=>'Fruits','options'=>array('1'=>'Apple','2'=>'Mango')),'animals'=>array('label'=>'Animals','options'=>array('cat'=>'CAT','dog'=>'DOG'))),
            'empty_option'=>'Please Select'
        ),

    ));

обратите внимание, что опция с именем empty_options не существует, вместо нее следует использовать empty_option.

13 голосов
/ 23 февраля 2012

Для Zend_Form_Element_Select () это выглядит так

$multiOptions = array(
  'Group A' => array(1 => 'First Value',2 => 'Second Value A),
  'Group B' => array(3 => 'Third Value'),
);

$element->setMultiOptions($multiOptions);

Обратите внимание, что у вас также есть addMultiOption ($ option, $ value) и addMultiOptions ($ options). Просто включите значение или параметры в дополнительный массив.

...