HTML::Widget::Element::Select(3p)

NAME
HTML::Widget::Element::Select - Select Element

SYNOPSIS
    my $e = $widget->element( 'Select', 'foo' );
    $e->comment('(Required)');
    $e->label('Foo');
    $e->size(23);
    $e->options( foo => 'Foo', bar => 'Bar' );
    $e->selected(qw/foo bar/);
    $e->constrain_options(1);

DESCRIPTION
Select Element.

As of version 1.09, an In constraint is no longer automatically added to Select elements. Use "constrain_options" to provide this functionality.

METHODS

  comment
Add a comment to this Element's label.

  label
This label will be placed next to your Element.

  size
If set to 1, the select element is displayed as a pop-up menu, otherwise the element is displayed as a list box, with the size determining the display height in rows. The default size is 1.

  multiple
    $widget->element( 'Select', 'foo' )->multiple( 1 );

If the multiple attribute is set, the select element is rendered as a list box, and the user may select multiple options.

If the size is not set, the default size (height) is the number of elements. If the size is set to 1, the element is rendered as a pop-up menu.

  options
A list of options in key => value format. Each key is the unique id of an option tag, and its corresponding value is the text displayed in the element.

  selected

  value
A list of keys (unique option ids) which will be pre-set to "selected". Can also be addressed as value for consistency with the other elements

"value" is an alias for "selected".

  constrain_options

  constrain_values
If true, an In constraint will automatically be added to the widget, using the key names from "options".

"constrain_values" is an alias for "constrain_options".

  retain_default
If true, overrides the default behaviour, so that after a field is missing from the form submission, the xml output will contain the default value, rather than be empty.

  prepare

  process

  containerize

SEE ALSO
HTML::Widget::Element

AUTHOR
Sebastian Riedel, "sri@oook.de"

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