Watir : Methods supported by Element This page last changed on Aug 08, 2007 by bret. ## Methods Supported by Element #### The HTML Elements that are currently supported include:
button | <input> tags with type=button, submit, image or reset
radio | <input> tags with the type=radio; known as radio buttons
check_box | <input> tags with type=checkbox
text_field | <input> tags with the type=text (single-line), type=textarea (multi-line), and type=password
hidden | <input> tags with type=hidden
select_list | <select> tags, known as drop-downs or drop-down lists
label | <label> tags (including "for" attribute)
span | <span> tags
div | <div> tags
p | <p> (paragraph) tags
link | <a> (anchor) tags
table | <table> tags, including row and cell methods for accessing nested elements
image | <img> tags
form | <form> tags
frame | frames, including both the <frame> elements and the corresponding pages
map | <map> tags
area | <area> tags
li | <li> tags
h1 - h6 | <h1>, <h2>, <h3>, <h4>, <h5>, <h6> tags
#### The ways ("How"s) that are available to identify an html object depend upon the object type, but include:
:id | Used to find an element that has an "id=" attribute. Since each id should be unique, according to the XHTML specification, this is recommended as the most reliable method to find an object. *
:name | Used to find an element that has a "name=" attribute. This is useful for older versions of HTML, but "name" is deprecated in XHTML. *
:value | Used to find a text field with a given default value, or a button with a given caption, or a text field
:text | Used for links, spans, divs and other element that contain text.
:index | Used to find the nth element of the specified type on a page. For example, button(:index, 2) finds the second button. Current versions of WATIR use 1-based indexing, but future versions will use 0-based indexing.
:class | Used for an element that has a "class=" attribute.
:title | Used for an element that has a "title=" attribute.
:xpath | Finds the item using xpath query.
:method | Used only for forms, the method attribute of a form is either GET or POST.
:action | Used only for form elements, specifies the URL where the form is to be submitted.
:href | Used to identify a link by its "href=" attribute.
:src | Used to identify an image by its URL.
* :id and :name are the quickest of these to process, and so should be used when possible to speed up scripts. #### Supported Methods by Element
| :id | :name | :value | :text | :caption | :index | :class | :xpath | :title | :method | :action | :href | :src | :for | multiple attribute support?
--- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | ---
button |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
radio |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
check_box |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
text_field |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
hidden |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
select_list |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
label |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
span |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
div |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
p |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
link |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
table |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
image |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
form |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
frame |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
map |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
area |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
li |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
h1 - h6 |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
#### Questions: Are there any missing element types, or element types that shouldn't be included? (What about the following methods: tableCell? file_field? ps? pre?) Any missing (or extraneous) attributes? Any inaccuracies? (I assume that currently there are many.) Should this be folded into, or linked to from, the User Guide? Can someone add descriptions for :method and :action, above? Other suggestions?

Document generated by Confluence on Aug 08, 2007 23:54