HTML::DOM::Collection::Options - A subclass of HTML::DOM::Collection for 'option' elements
use HTML::DOM; $doc = HTML::DOM->new; $doc->write(' <form name=theform> <select name=choice> <option> <option> </select> </form> '); $doc->close; $options = $doc->forms->{theform}{choice}->options; # returns an HTML::DOM::Collection::Options object $options->[0]; # first option $options->item(0); # same $options->[0] = undef; # deletes it delete $options->[0]; # likewise $options->length; # same as scalar @$options
This inherits from HTML::DOM::Collection and adds a few extra methods for compatibility with WWW::Mechanize. This is used to represent a 'select' element's list of options.
Normally you would simply call HTML::DOM::Element::Select's options method (as in the "SYNOPSIS"). But if you wall to call the constructor anyway, here is the syntax:
options
$elements = HTML::DOM::Collection::Options->new( $nodelist, $select_elem )
$nodelist should be a node list (HTML::DOM::NodeList) object.
You can use an options collection as an array reference. You can even modify it this way. If you assign undef to an array element or delete it, it will be removed completely, so $options->[0] = undef will cause $options->[1] to become $options->[0], for example.
undef
$options->[0] = undef
Don't rely on array manipulation functions, such as shift, push, splice, etc. Also, don't rely on list assignments.
shift
push
splice
Returns the number of items in the collection.
Returns item number $index, numbered from 0. Note that you call also use $elements->[$index] for short.
$index
$elements->[$index]
Returns the item named $name. You can also write $elements->{$name}.
$name
$elements->{$name}
These last few are provided for WWW::Mechanize compatibility.
Returns the string 'option'.
Returns the name of the 'select' element.
Returns the a list of the options' values. Provided for WWW::Mechanize compatibility.
Selects the option with the value given and returns the old value, or simply returns the value if there is no argument.
Returns true if all the options are disabled, false otherwise.
Returns a list consisting of (0) the name of the 'select' element and (1) the value of the selected option.
HTML::DOM
HTML::DOM::Collection
HTML::DOM::Element::Select
HTML::DOM::Element::Form
The source of HTML/DOM/Element/Form.pm, where this is implemented.
To install HTML::DOM, copy and paste the appropriate command in to your terminal.
cpanm
cpanm HTML::DOM
CPAN shell
perl -MCPAN -e shell install HTML::DOM
For more information on module installation, please visit the detailed CPAN module installation guide.