我正在尝试在列表中选择第二个产品,但下面的代码不起作用。任何的想法。感谢
$this->add(array(
'type' => 'Zend\Form\Element\Select',
'name' => 'manufacturer',
'options' => array(
'label' => 'Manufacturer name',
'value_options' => $this->getManufacturer(),
'empty_option' => '--- select manufacturer ---',
),
'attributes' => array(
'value' => 2,
'selected' => true,
),
));
答案 0 :(得分:4)
我在这里给出一个简单的例子,希望它可以帮到你。 正如您所提到的那样,为了获得所选元素,简单地使用value属性具有所选元素的值,如:
$this->add(array(
'type' => 'Zend\Form\Element\Select',
'name' => 'gender',
'options' => array(
'label' => 'Gender',
'value_options' => array(
'1' => 'Select your gender',
'2' => 'Female',
'3' => 'Male'
),
),
'attributes' => array(
'value' => '1' //set selected to '1'
)
));
you can prefer this link for more 如果你得到了
haystack选项是必需的
然后将disable_inarray_validator添加到选项:
$this->add(array(
...
'options' => array(
'disable_inarray_validator' => true,
'label' => 'county',
),
));
答案 1 :(得分:0)
如果我没有弄错,那么价值就是选项的一部分而非属性。
$this->add(array(
'type' => 'Zend\Form\Element\Select',
'name' => 'manufacturer',
'options' => array(
'label' => 'Manufacturer name',
'value_options' => $this->getManufacturer(),
'empty_option' => '--- select manufacturer ---',
'value' => '2'
)
));