HTML::FormFu::Element::_Group(3) grouped form field base-class

DESCRIPTION

Base class for HTML::FormFu::Element::Checkboxgroup, HTML::FormFu::Element::Radiogroup, and HTML::FormFu::Element::Select fields.

METHODS

options

Arguments: none

Arguments: \@options

    ---
    elements:
      - type: Select
        name: foo
        options:
          - [ 01, January ]
          - [ 02, February ]
          - value: 03
            label: March
            attributes:
              style: highlighted
          - [ 04, April ]

If passed no arguments, it returns an arrayref of the currently set options.

Use to set the list of items in the select menu / radiogroup.

Its arguments must be an array-ref of items. Each item may be an array ref of the form "[ $value, $label ]" or a hash-ref of the form "{ value => $value, label => $label }". Each hash-ref may also have the keys "attributes" and "label_attributes".

Passing an item containing a "group" key will, for Select fields, create an optgroup. And for Radiogroup fields or Checkboxgroup fields, create a sub-group of radiobuttons or checkboxes with a new "span" block, with the classname "subgroup".

An example of Select optgroups:

    ---
    elements:
      - type: Select
        name: foo
        options:
          - label: "group 1"
            group:
              - [1a, 'item 1a']
              - [1b, 'item 1b']
          - label: "group 2"
            group:
              - [2a, 'item 2a']
              - [2b, 'item 2b']

When using the hash-ref construct, the "label_xml" and "label_loc" variants of "label" are supported, as are the "value_xml" and "value_loc" variants of "value", the "attributes_xml" variant of "attributes" and the "label_attributes_xml" variant of "label_attributes".

"container_attributes" or "container_attributes_xml" is used by HTML::FormFu::Element::Checkboxgroup and HTML::FormFu::Element::Radiogroup for the c<span> surrounding each item's input and label. It is ignored by HTML::FormFu::Element::Select elements.

values

Arguments: \@values

    ---
    elements:
      - type: Radiogroup
        name: foo
        values:
          - jan
          - feb
          - mar
          - apr

A more concise alternative to ``options''. Use to set the list of values in the select menu / radiogroup.

Its arguments must be an array-ref of values. The labels used are the result of "ucfirst($value)".

value_range

Arguments: \@values

    ---
    elements:
      - type: Select
        name: foo
        value_range:
          - ""
          - 1
          - 12

Similar to ``values'', but the last 2 values are expanded to a range. Any preceding values are used literally, allowing the common empty first item in select menus.

empty_first

If true, then a blank option will be inserted at the start of the option list (regardless of whether ``options'', ``values'' or ``value_range'' was used to populate the options). See also ``empty_first_label''.

empty_first_label

empty_first_label_xml

empty_first_label_loc

If ``empty_first'' is true, and ``empty_first_label'' is set, this value will be used as the label for the first option - so only the first option's value will be empty.

AUTHOR

Carl Franks, "[email protected]"

LICENSE

This library is free software, you can redistribute it and/or modify it under the same terms as Perl itself.