如何设置一个zend multiCheckbox表单字段并选中复选框?

时间:2011-11-29 22:38:28

标签: zend-framework zend-form

我有这样的表格:

$this->addElement ( 
            'multiCheckbox', 'servers2', 
            array (
                   'checkedValue' => '0',
                   'multiOptions' => array(
                        '11.com' => '.com',
                        '12.com' => '12.com',
                        '16.com' => '16.com',
                        '3.com' => '17.com'
                        )
            ));

问题是checkedValue不能用于此设置,它适用于简单的复选框。我也试过'checkedValues' => array('1','0'),单数或复数, 但看不到尽头。

任何想法?

感谢

3 个答案:

答案 0 :(得分:11)

要将某些复选框标记为已选中,请尝试以下操作:

$multiCheckElement->setValue(array('11.com', '3.com'));

// or 

$this->addElement ( 
    'multiCheckbox', 'servers2', 
    array (
        'value' => array('11.com', '3.com'), // select these 2 values
        'multiOptions' => array(
                    '11.com' => '.com',
                    '12.com' => '12.com',
                    '16.com' => '16.com',
                    '3.com' => '17.com'
                    )
    )
);

另见Zend_Form_Element_MultiCheckbox

答案 1 :(得分:2)

ZF2将要求您使用value_options;

$form->add(
        array(
            'name' => 'servers2',
            'type' => \Zend\Form\Element\MultiCheckbox::class,
            'attributes' => array(
                'id' => 'servers2',
                'class' => 'form-control',
            ),
            'options' => array(
                'label' => 'Servers 2',
                'column-size' => 'sm-10',
                'label_attributes' => array('class' => 'col-sm-2'),
                'twb-layout' => 'horizontal',
                'value_options' => array(
                    '11.com' => '.com',
                    '12.com' => '12.com',
                    '16.com' => '16.com',
                    '3.com' => '17.com'
                )
            ),
        )
    );

答案 2 :(得分:0)

指定选中的选项,如at所示 使用'selected' => true属性:

$options = array(
    array(
        'value' => '0',
        'label' => 'Apple',
        'selected' => false,
        'disabled' => false,
        'attributes' => array(
            'id' => 'apple_option',
            'data-fruit' => 'apple',
        ),
        'label_attributes' => array(
            'id' => 'apple_label',
        ),
    ),
    array(
        'value' => '1',
        'label' => 'Orange',
        'selected' => true,
    ),
    array(
        'value' => '2',
        'label' => 'Lemon',
    ),
);