将ZendFramework2中的默认选中值设置为RADIO输入(QuickStart表单)

时间:2014-01-27 14:15:08

标签: input zend-framework2 default radio checked

不幸的是,我没有这里的确切示例,但是,与此类似:

$form->add(array(
         'type' => 'Zend\Form\Element\Radio',
         'name' => 'gender'
         'options' => array(
                'label' => 'What is your gender ?',
                'value_options' => array(
                        '0' => 'Female',
                        '1' => 'Male',
                ),
        )
));

如何为此元素设置默认值?我尝试过这个,但没有用:

'attributes' => array(
       'value' => '0'
)

感谢的!抱歉,我的英语很差!我需要改进它!

3 个答案:

答案 0 :(得分:0)

您应该在option下提供值,而不是属性。

喜欢这个:

$form->add(array(
     'type' => 'Zend\Form\Element\Radio',
     'name' => 'gender'
     'options' => array(
            'label' => 'What is your gender ?',
            'value_options' => array(
                    '0' => 'Female',
                    '1' => 'Male',
            ),
            'value' => 10, // here
    )
));

请参阅此链接:here

Radio只是MultiCheckbox

的扩展

答案 1 :(得分:0)

您需要在checked_value数组

中设置 options
$form->add(array(
  'type' => 'Zend\Form\Element\Radio',
  'name' => 'gender', // <-- missing comma here also
  'options' => array(
    'label' => 'What is your gender ?',
    'value_options' => array(
      '0' => 'Female',
      '1' => 'Male',
     ),
     'checked_value' => 10,
  )
));

您可以在Radio元素扩展的setOptions() method of Zend\Form\Element\Checkbox中看到这一点。

答案 2 :(得分:0)

您的语法是正确的。 属性中的键用于设置默认选中的值。

您只是忘了在&#39; name&#39;之后添加一个逗号。 =&GT; &#39;两性&#39;
以下代码适合您

$form->add(array(
    'type' => 'Zend\Form\Element\Radio',
    'name' => 'gender',
    'attributes' => array(
        'value' => '0',
    ),
    'options' => array(
        'label' => 'What is your gender?',
        'value_options' => array(
            '0' => 'Female',
            '1' => 'Male',
        ),
    ),
));