4

我有一个正在使用的表单页面

$form->addField('name', 'checkboxes', array('label' => 'check', 'name' => 'name[]',
    'values' => array(
        array('value'=>'1', 'label'=>'1'),
        array('value'=>'2', 'label'=>'2'),
        array('value'=>'3', 'label'=>'3'),
        array('value'=>'4', 'label'=>'4'),
        array('value'=>'5', 'label'=>'5'),
    )
));

创建复选框列表。

问题是我不知道如何在编辑时让它们填充。谁能告诉我该怎么做?

我正在使用复选框类型,因此它们显示为列表而不是表单中的单独行。如果有办法将它们创建为单独的字段但都在一行中,我很想知道如何。

4

4 回答 4

9
$form->addField('name', 'checkboxes', array('label' => 'check', 'name' => 'name[]',
    'values' => array(
        array('value'=>'1', 'label'=>'1'),
        array('value'=>'2', 'label'=>'2'),
        array('value'=>'3', 'label'=>'3'),
        array('value'=>'4', 'label'=>'4'),
        array('value'=>'5', 'label'=>'5'),
    ),
    'value' => array('1', '5'),
    // or 
    // 'checked' => array('1', '5')
));

然后将检查值为“1”和“5”的复选框。有关更多详细信息,您可以查看 lib/Varien/Data/Form/Element/Checkboxes.php

于 2012-06-08T22:44:34.277 回答
0

我还附上了代码,或者您可以按照以下链接获取更多帮助
http://pastebin.com/hKMmryE9

Magento, populating checkboxes fields on an admin edit form
$form->addField('name', 'checkboxes', array('label' => 'check', 'name' => 'name[]',
    'values' => array(
        array('value'=>'1', 'label'=>'1'),
        array('value'=>'2', 'label'=>'2'),
        array('value'=>'3', 'label'=>'3'),
        array('value'=>'4', 'label'=>'4'),
        array('value'=>'5', 'label'=>'5'),
    )
));

$form->addField('name', 'checkboxes', array('label' => 'check', 'name' => 'name[]',
    'values' => array(
        array('value'=>'1', 'label'=>'1'),
        array('value'=>'2', 'label'=>'2'),
        array('value'=>'3', 'label'=>'3'),
        array('value'=>'4', 'label'=>'4'),
        array('value'=>'5', 'label'=>'5'),
    ),
    'value' => array('1', '5'),
    // or
    // 'checked' => array('1', '5')
));
于 2013-06-14T08:46:44.720 回答
0

很少改进和验证:

$fieldset->addField('payment_methods', 'checkboxes', array('label' => 'Payment Methods', 'name' => 'payment_methods[]',
'values' => array(
    array('value'=>'1', 'label'=>'Cash'),
    array('value'=>'2', 'label'=>'Paypal'),
    array('value'=>'3', 'label'=>'Authorize.Net'),
    array('value'=>'4', 'label'=>'Square'),
),
        'required' => true,
        'checked' => array('1','4'),
        'disabled' => array('1'), ////if you want
));
于 2014-09-17T13:21:40.777 回答
0
Create $array like below
Array
(
    [0] => Array
        (
            [value] => 1
            [label] => Value 1
        )
    [1] => Array
        (
            [value] => 2
            [label] => Value 2
        )
    [2] => Array
        (
            [value] => 3
            [label] => Value 3
        )
    [3] => Array
        (
            [value] => 4
            [label] => Value 4
        )
    [4] => Array
        (
            [value] => 5
            [label] => Value 5
        )
)
$fieldset->addField('checkboxes', 'checkboxes', array(


 'label'     => 'Select Value',
                          'name'      => 'checkboxes[]',
                          'values' => $array,
                          'onclick' => "",
                          'onchange' => "",
                          'disabled' => false,
                          'after_element_html' => '',
                          'tabindex' => 1
                        ));
于 2014-12-17T05:46:11.823 回答