On 4 November 2011 17:41, J. Bobby Lopez <bobby.lo...@gmail.com> wrote: > Hello, > > I'm trying to understand the data-structure required to populate a > form with 'select' element values (options). > > When I dump (Data::Dumper) the FormFu object, I see that the structure > looks similar to the following: > > > 'name' => 'EmailDL', > > '_options' => [ > > { > > 'label_attributes' => {}, > > 'value' => 'm', > > 'container_attributes' => {}, > > 'label' => 'Male', > > 'attributes' => {} > > }, > > { > > 'label_attributes' => {}, > > 'value' => 'f', > > 'container_attributes' => {}, > > 'label' => 'Female', > > 'attributes' => {} > > } > > ], > > Seeing this, I figured that the way to structure $form_input (being > that $form_input = \%cgivars) would be something like the following: > > 'Firstname' => 'Faisal', > 'EmailDL' => [ > { > 'value' => 'myvalue', > 'label' => 'mylabel' > } > ], > > However this doesn't seem to work. I've found that structuring > $form_input correctly, and then issuing a > $fu->default_values($form_input) to be simple and effective, except in > this instance when I'm trying to include the select/options > sub-structure. > > So the question is: How should I structure 'EmailDL' above to > correctly populate 'select' options when doing > $fu->default_values($form_input) or $fu->process($form_input) ?
Hi, You can't use default_values() to populate a Select element. You need to use options() or values(). You can then call default_values() to state which select item will be selected by default when the form is first displayed. See these docs: http://search.cpan.org/~perler/HTML-FormFu-0.09005/lib/HTML/FormFu/Role/Element/Group.pm#options http://search.cpan.org/~perler/HTML-FormFu-0.09005/lib/HTML/FormFu/Role/Element/Group.pm#values http://search.cpan.org/~perler/HTML-FormFu-0.09005/lib/HTML/FormFu.pm#default_values Hope this helps, Carl _______________________________________________ HTML-FormFu mailing list HTML-FormFu@lists.scsys.co.uk http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/html-formfu