使用'select'元素选项填充$ form_input?

时间:2011-11-04 17:48:04

标签: perl html-formfu

我正在尝试了解填充a所需的数据结构 使用'select'元素值(选项)形成。

当我转储(Data :: Dumper)FormFu对象时,我看到了对象结构 看起来类似于以下内容:

'name' => 'EmailDL',
'_options' => [
         {
           'label_attributes' => {},
           'value' => 'm',
           'container_attributes' => {},
           'label' => 'Male',
           'attributes' => {}
         },
         {
           'label_attributes' => {},
           'value' => 'f',
           'container_attributes' => {},
           'label' => 'Female',
           'attributes' => {}
         }
       ],

看到这一点,我认为构造$ form_input(即$form_input = \%cgivars)的方式如下:

     'Firstname' => 'Faisal',
     'EmailDL' => [
                    {
                      'value' => 'myvalue',
                      'label' => 'mylabel'
                    }
                  ],

然而,这似乎不起作用。我发现正确地构造$form_input,然后发出$fu->default_values($form_input)是简单有效的,除非在我尝试包含select / options子结构的情况下。

所以问题是:在执行$fu->default_values($form_input)$fu->process($form_input)时,我应如何构建上面的'EmailDL'以正确填充'select'选项?

1 个答案:

答案 0 :(得分:1)

要设置选项,请使用选项调用

$fu->get_all_element('EmailDL')->options([ [ 'myvalue', 'mylabel' ], 
                                             [ 'val2', 'label2' ] ]);

如果您想设置其中一个值,可以使用default_values。

$fu->default_values({ EmailDL => 'val2' });

Element::Group文档中提供了更多帮助。请注意,代码示例位于帮助文本中。