Mozilla::Mechanize::Input - A small class to interface with the Input objects


sorry, read the source for now


The Mozilla::Mechanize::Input object is a thin wrapper around HTML input elements.


Mozilla::Mechanize::Input->new($input_node, $moz)

Initialize a new object. $input_node is a Mozilla::DOM::HTMLElement (or a node that can be QueryInterfaced to one); specifically, it must be an HTMLInputElement, an HTMLButtonElement, an HTMLSelectElement, or an HTMLTextAreaElement. $moz is a Mozilla::Mechanize object. (This latter is a hack for `click', so that new pages can load in the browser. The GUI has to be able to enter its main loop. If you don't plan to use that method, you don't have to pass it in.)


Return the input-control name.


Return the type of the input control. Note: for <select>, this returns 'select-one' for single select, and 'select-multiple' for multiple. (I don't know why.)

$input->value( [$value] )

Get/Set the value of the input control.

$input->select_value( [$value] )

Mark all options with $value as selected and unselect all other options.

$input->radio_value( [$value] )

Locate all radio-buttons with the same name within this form. Now uncheck all values that are not equal to $value.


Calls the click() method on the actual object.


Copyright 2005,2009 Scott Lanning <>. All rights reserved.

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

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.