com.gargoylesoftware.htmlunit.html
Class HtmlInput

java.lang.Object
  extended by com.gargoylesoftware.htmlunit.html.DomNode
      extended by com.gargoylesoftware.htmlunit.html.DomNamespaceNode
          extended by com.gargoylesoftware.htmlunit.html.DomElement
              extended by com.gargoylesoftware.htmlunit.html.HtmlElement
                  extended by com.gargoylesoftware.htmlunit.html.StyledElement
                      extended by com.gargoylesoftware.htmlunit.html.ClickableElement
                          extended by com.gargoylesoftware.htmlunit.html.HtmlInput
All Implemented Interfaces:
DisabledElement, SubmittableElement, java.io.Serializable, java.lang.Cloneable, org.w3c.dom.Element, org.w3c.dom.Node
Direct Known Subclasses:
HtmlButtonInput, HtmlCheckBoxInput, HtmlFileInput, HtmlHiddenInput, HtmlImageInput, HtmlPasswordInput, HtmlRadioButtonInput, HtmlResetInput, HtmlSubmitInput, HtmlTextInput

public abstract class HtmlInput
extends ClickableElement
implements DisabledElement, SubmittableElement

Wrapper for the HTML element "input".

Version:
$Revision: 4794 $
Author:
Mike Bowler, David K. Taylor, Christian Sell, David D. Kilzer, Marc Guillemot, Daniel Gredler, Ahmed Ashour
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class com.gargoylesoftware.htmlunit.html.HtmlElement
HtmlElement.ChildElementsIterator
 
Nested classes/interfaces inherited from class com.gargoylesoftware.htmlunit.html.DomNode
DomNode.ChildIterator, DomNode.DescendantElementsIterator
 
Field Summary
static java.lang.String TAG_NAME
          The HTML tag represented by this element.
 
Fields inherited from class com.gargoylesoftware.htmlunit.html.HtmlElement
TAB_INDEX_OUT_OF_BOUNDS
 
Fields inherited from class com.gargoylesoftware.htmlunit.html.DomElement
ATTRIBUTE_NOT_DEFINED, ATTRIBUTE_VALUE_EMPTY
 
Fields inherited from class com.gargoylesoftware.htmlunit.html.DomNode
AS_TEXT_BLANK, AS_TEXT_BLOCK_SEPARATOR, AS_TEXT_NEW_LINE, AS_TEXT_TAB, PROPERTY_ELEMENT, READY_STATE_COMPLETE, READY_STATE_INTERACTIVE, READY_STATE_LOADED, READY_STATE_LOADING, READY_STATE_UNINITIALIZED
 
Fields inherited from interface org.w3c.dom.Node
ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_POSITION_CONTAINED_BY, DOCUMENT_POSITION_CONTAINS, DOCUMENT_POSITION_DISCONNECTED, DOCUMENT_POSITION_FOLLOWING, DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC, DOCUMENT_POSITION_PRECEDING, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE
 
Constructor Summary
HtmlInput(SgmlPage page, java.util.Map<java.lang.String,DomAttr> attributes)
          Creates an instance.
HtmlInput(java.lang.String namespaceURI, java.lang.String qualifiedName, SgmlPage page, java.util.Map<java.lang.String,DomAttr> attributes)
          Creates an instance.
 
Method Summary
<P extends Page>
P
click(int x, int y)
          Simulate clicking this input with a pointing device.
 java.lang.String getAcceptAttribute()
          Returns the value of the attribute "accept".
 java.lang.String getAccessKeyAttribute()
          Returns the value of the attribute "accesskey".
 java.lang.String getAlignAttribute()
          Returns the value of the attribute "align".
 java.lang.String getAltAttribute()
          Returns the value of the attribute "alt".
 java.lang.String getCheckedAttribute()
          Returns the value of the attribute "checked".
 java.lang.String getDefaultValue()
          Returns the default value to use when this element gets reset, if applicable.
 java.lang.String getDisabledAttribute()
          Returns the value of the attribute "disabled".
 java.lang.String getMaxLengthAttribute()
          Returns the value of the attribute "maxlength".
 java.lang.String getNameAttribute()
          Returns the value of the attribute "name".
 java.lang.String getOnBlurAttribute()
          Returns the value of the attribute "onblur".
 java.lang.String getOnChangeAttribute()
          Returns the value of the attribute "onchange".
 java.lang.String getOnFocusAttribute()
          Returns the value of the attribute "onfocus".
 java.lang.String getOnSelectAttribute()
          Returns the value of the attribute "onselect".
 java.lang.String getReadOnlyAttribute()
          Returns the value of the attribute "readonly".
 java.lang.String getSizeAttribute()
          Returns the value of the attribute "size".
 java.lang.String getSrcAttribute()
          Returns the value of the attribute "src".
 org.apache.commons.httpclient.NameValuePair[] getSubmitKeyValuePairs()
          Returns an array of NameValuePairs that are the values that will be sent back to the server whenever this element's containing form is submitted.
 java.lang.String getTabIndexAttribute()
          Returns the value of the attribute "tabindex".
 java.lang.String getTypeAttribute()
          Returns the value of the attribute "type".
 java.lang.String getUseMapAttribute()
          Returns the value of the attribute "usemap".
 java.lang.String getValueAttribute()
          Return the value of the attribute "value".
 boolean isChecked()
          Returns true if this element is currently selected.
 boolean isDefaultChecked()
          Returns the default checked state to use when this element gets reset, if applicable.
 boolean isDisabled()
          Returns true if the disabled attribute is set for this element.
 boolean isReadOnly()
          Returns true if this element is read only.
 void reset()
          Returns the value of this element to the default value or checked state (usually what it was at the time the page was loaded, unless it has been modified via JavaScript).
 Page setChecked(boolean isChecked)
          Sets the "checked" attribute, returning the page that occupies this input's window after setting the attribute.
 void setDefaultChecked(boolean defaultChecked)
          Sets the default checked state to use when this element gets reset, if applicable.
 void setDefaultValue(java.lang.String defaultValue)
          Sets the default value to use when this element gets reset, if applicable.
protected  void setDefaultValue(java.lang.String defaultValue, boolean modifyValue)
          Sets the default value, optionally also modifying the current value.
 void setReadOnly(boolean isReadOnly)
          Sets the "readOnly" attribute.
 Page setValueAttribute(java.lang.String newValue)
          Sets the content of the "value" attribute, executing onchange handlers if appropriate.
 
Methods inherited from class com.gargoylesoftware.htmlunit.html.StyledElement
getClassAttribute, getIdAttribute, getStyleAttribute, getTitleAttribute
 
Methods inherited from class com.gargoylesoftware.htmlunit.html.HtmlElement
addHtmlAttributeChangeListener, appendChildIfNoneExists, blur, checkChildHierarchy, click, click, click, dblClick, dblClick, doClickAction, doType, fireEvent, fireEvent, fireHtmlAttributeAdded, fireHtmlAttributeRemoved, fireHtmlAttributeReplaced, focus, getChildElements, getElementById, getElementsByAttribute, getEnclosingElement, getEnclosingForm, getEnclosingFormOrDie, getEventHandler, getHtmlElementsByTagName, getHtmlElementsByTagNames, getId, getLangAttribute, getNodeName, getOnClickAttribute, getOnDblClickAttribute, getOneHtmlElementByAttribute, getOnKeyDownAttribute, getOnKeyPressAttribute, getOnKeyUpAttribute, getOnMouseDownAttribute, getOnMouseMoveAttribute, getOnMouseOutAttribute, getOnMouseOverAttribute, getOnMouseUpAttribute, getTabIndex, getTextDirectionAttribute, getXmlLangAttribute, hasHtmlElementWithId, isAttributeCaseSensitive, isStateUpdateFirst, isSubmittableByEnter, mouseDown, mouseDown, mouseMove, mouseMove, mouseOut, mouseOut, mouseOver, mouseOver, mouseUp, mouseUp, preventDefault, removeAttribute, removeChild, removeEventHandler, removeHtmlAttributeChangeListener, rightClick, rightClick, setAttributeNS, setEventHandler, setEventHandler, setId, toString, type, type, type, type
 
Methods inherited from class com.gargoylesoftware.htmlunit.html.DomElement
cloneNode, getAttribute, getAttributeNode, getAttributeNodeNS, getAttributeNS, getAttributes, getAttributesMap, getElementsByTagName, getElementsByTagNameNS, getNodeType, getSchemaTypeInfo, getTagName, hasAttribute, hasAttributeNS, hasAttributes, isEmptyXmlTagExpanded, namespaces, printOpeningTagContentAsXml, printXml, removeAttributeNode, removeAttributeNS, setAttribute, setAttributeNode, setAttributeNodeNS, setIdAttribute, setIdAttributeNode, setIdAttributeNS
 
Methods inherited from class com.gargoylesoftware.htmlunit.html.DomNamespaceNode
getLocalName, getNamespaceURI, getPrefix, getQualifiedName, setPrefix
 
Methods inherited from class com.gargoylesoftware.htmlunit.html.DomNode
addDomChangeListener, appendChild, asText, asXml, compareDocumentPosition, fireNodeAdded, fireNodeDeleted, getAllHtmlChildElements, getAncestors, getBaseURI, getByXPath, getCanonicalXPath, getChildNodes, getChildren, getEndColumnNumber, getEndLineNumber, getFeature, getFirstByXPath, getFirstChild, getLastChild, getNextSibling, getNodeValue, getOwnerDocument, getPage, getParentNode, getPreviousSibling, getReadyState, getScriptObject, getStartColumnNumber, getStartLineNumber, getTextContent, getUserData, hasChildNodes, insertBefore, insertBefore, isAncestorOf, isBlock, isDefaultNamespace, isDisplayed, isEqualNode, isSameNode, isSupported, isTrimmedText, lookupNamespaceURI, lookupPrefix, normalize, notifyIncorrectness, onAddedToPage, onAllChildrenAddedToPage, printChildrenAsXml, remove, removeAllChildren, removeChild, removeDomChangeListener, replace, replaceChild, selectNodes, selectSingleNode, setNextSibling, setNodeValue, setParentNode, setPreviousSibling, setReadyState, setScriptObject, setTextContent, setUserData
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.w3c.dom.Node
appendChild, compareDocumentPosition, getBaseURI, getChildNodes, getFeature, getFirstChild, getLastChild, getLocalName, getNamespaceURI, getNextSibling, getNodeValue, getOwnerDocument, getParentNode, getPrefix, getPreviousSibling, getTextContent, getUserData, hasChildNodes, insertBefore, isDefaultNamespace, isEqualNode, isSameNode, isSupported, lookupNamespaceURI, lookupPrefix, normalize, removeChild, replaceChild, setNodeValue, setPrefix, setTextContent, setUserData
 

Field Detail

TAG_NAME

public static final java.lang.String TAG_NAME
The HTML tag represented by this element.

See Also:
Constant Field Values
Constructor Detail

HtmlInput

public HtmlInput(SgmlPage page,
                 java.util.Map<java.lang.String,DomAttr> attributes)
Creates an instance.

Parameters:
page - the page that contains this element
attributes - the initial attributes

HtmlInput

public HtmlInput(java.lang.String namespaceURI,
                 java.lang.String qualifiedName,
                 SgmlPage page,
                 java.util.Map<java.lang.String,DomAttr> attributes)
Creates an instance.

Parameters:
namespaceURI - the URI that identifies an XML namespace
qualifiedName - the qualified name of the element type to instantiate
page - the page that contains this element
attributes - the initial attributes
Method Detail

setValueAttribute

public Page setValueAttribute(java.lang.String newValue)
Sets the content of the "value" attribute, executing onchange handlers if appropriate. This method returns the page contained by this element's window after the value is set, which may or may not be the same as the original page.

Parameters:
newValue - the new content
Returns:
the page contained by this element's window after the value is set

getSubmitKeyValuePairs

public org.apache.commons.httpclient.NameValuePair[] getSubmitKeyValuePairs()

Returns an array of NameValuePairs that are the values that will be sent back to the server whenever this element's containing form is submitted.

THIS METHOD IS INTENDED FOR THE USE OF THE FRAMEWORK ONLY AND SHOULD NOT BE USED BY CONSUMERS OF HTMLUNIT. USE AT YOUR OWN RISK.

Specified by:
getSubmitKeyValuePairs in interface SubmittableElement
Returns:
the values that will be sent back to the server whenever this element's containing form is submitted

getTypeAttribute

public final java.lang.String getTypeAttribute()
Returns the value of the attribute "type". Refer to the HTML 4.01 documentation for details on the use of this attribute.

Returns:
the value of the attribute "type" or an empty string if that attribute isn't defined

getNameAttribute

public final java.lang.String getNameAttribute()
Returns the value of the attribute "name". Refer to the HTML 4.01 documentation for details on the use of this attribute.

Returns:
the value of the attribute "name" or an empty string if that attribute isn't defined

getValueAttribute

public final java.lang.String getValueAttribute()

Return the value of the attribute "value". Refer to the HTML 4.01 documentation for details on the use of this attribute.

Returns:
the value of the attribute "value" or an empty string if that attribute isn't defined

getCheckedAttribute

public final java.lang.String getCheckedAttribute()
Returns the value of the attribute "checked". Refer to the HTML 4.01 documentation for details on the use of this attribute.

Returns:
the value of the attribute "checked" or an empty string if that attribute isn't defined

getDisabledAttribute

public final java.lang.String getDisabledAttribute()
Returns the value of the attribute "disabled". Refer to the HTML 4.01 documentation for details on the use of this attribute.

Specified by:
getDisabledAttribute in interface DisabledElement
Returns:
the value of the attribute "disabled" or an empty string if that attribute isn't defined

isDisabled

public final boolean isDisabled()
Returns true if the disabled attribute is set for this element.

Specified by:
isDisabled in interface DisabledElement
Returns:
true if the disabled attribute is set for this element

getReadOnlyAttribute

public final java.lang.String getReadOnlyAttribute()
Returns the value of the attribute "readonly". Refer to the HTML 4.01 documentation for details on the use of this attribute.

Returns:
the value of the attribute "readonly" or an empty string if that attribute isn't defined.

getSizeAttribute

public final java.lang.String getSizeAttribute()
Returns the value of the attribute "size". Refer to the HTML 4.01 documentation for details on the use of this attribute.

Returns:
the value of the attribute "size" or an empty string if that attribute isn't defined.

getMaxLengthAttribute

public final java.lang.String getMaxLengthAttribute()
Returns the value of the attribute "maxlength". Refer to the HTML 4.01 documentation for details on the use of this attribute.

Returns:
the value of the attribute "maxlength" or an empty string if that attribute isn't defined.

getSrcAttribute

public final java.lang.String getSrcAttribute()
Returns the value of the attribute "src". Refer to the HTML 4.01 documentation for details on the use of this attribute.

Returns:
the value of the attribute "src" or an empty string if that attribute isn't defined.

getAltAttribute

public final java.lang.String getAltAttribute()
Returns the value of the attribute "alt". Refer to the HTML 4.01 documentation for details on the use of this attribute.

Returns:
the value of the attribute "alt" or an empty string if that attribute isn't defined.

getUseMapAttribute

public final java.lang.String getUseMapAttribute()
Returns the value of the attribute "usemap". Refer to the HTML 4.01 documentation for details on the use of this attribute.

Returns:
the value of the attribute "usemap" or an empty string if that attribute isn't defined.

getTabIndexAttribute

public final java.lang.String getTabIndexAttribute()
Returns the value of the attribute "tabindex". Refer to the HTML 4.01 documentation for details on the use of this attribute.

Returns:
the value of the attribute "tabindex" or an empty string if that attribute isn't defined.

getAccessKeyAttribute

public final java.lang.String getAccessKeyAttribute()
Returns the value of the attribute "accesskey". Refer to the HTML 4.01 documentation for details on the use of this attribute.

Returns:
the value of the attribute "accesskey" or an empty string if that attribute isn't defined.

getOnFocusAttribute

public final java.lang.String getOnFocusAttribute()
Returns the value of the attribute "onfocus". Refer to the HTML 4.01 documentation for details on the use of this attribute.

Returns:
the value of the attribute "onfocus" or an empty string if that attribute isn't defined.

getOnBlurAttribute

public final java.lang.String getOnBlurAttribute()
Returns the value of the attribute "onblur". Refer to the HTML 4.01 documentation for details on the use of this attribute.

Returns:
the value of the attribute "onblur" or an empty string if that attribute isn't defined.

getOnSelectAttribute

public final java.lang.String getOnSelectAttribute()
Returns the value of the attribute "onselect". Refer to the HTML 4.01 documentation for details on the use of this attribute.

Returns:
the value of the attribute "onselect" or an empty string if that attribute isn't defined.

getOnChangeAttribute

public final java.lang.String getOnChangeAttribute()
Returns the value of the attribute "onchange". Refer to the HTML 4.01 documentation for details on the use of this attribute.

Returns:
the value of the attribute "onchange" or an empty string if that attribute isn't defined.

getAcceptAttribute

public final java.lang.String getAcceptAttribute()
Returns the value of the attribute "accept". Refer to the HTML 4.01 documentation for details on the use of this attribute.

Returns:
the value of the attribute "accept" or an empty string if that attribute isn't defined.

getAlignAttribute

public final java.lang.String getAlignAttribute()
Returns the value of the attribute "align". Refer to the HTML 4.01 documentation for details on the use of this attribute.

Returns:
the value of the attribute "align" or an empty string if that attribute isn't defined.

reset

public void reset()
Returns the value of this element to the default value or checked state (usually what it was at the time the page was loaded, unless it has been modified via JavaScript).

Specified by:
reset in interface SubmittableElement
See Also:
SubmittableElement.reset()

setDefaultValue

public void setDefaultValue(java.lang.String defaultValue)
Sets the default value to use when this element gets reset, if applicable. Also sets the value attribute when emulating Netscape browsers.

Specified by:
setDefaultValue in interface SubmittableElement
Parameters:
defaultValue - the default value to use when this element gets reset, if applicable
See Also:
SubmittableElement.setDefaultValue(String), HtmlFileInput.setDefaultValue(String)

setDefaultValue

protected void setDefaultValue(java.lang.String defaultValue,
                               boolean modifyValue)
Sets the default value, optionally also modifying the current value.

Parameters:
defaultValue - the new default value
modifyValue - Whether or not to set the current value to the default value

getDefaultValue

public java.lang.String getDefaultValue()
Returns the default value to use when this element gets reset, if applicable.

Specified by:
getDefaultValue in interface SubmittableElement
Returns:
the default value to use when this element gets reset, if applicable
See Also:
SubmittableElement.getDefaultValue()

setDefaultChecked

public void setDefaultChecked(boolean defaultChecked)
Sets the default checked state to use when this element gets reset, if applicable. The default implementation is empty; only checkboxes and radio buttons really care what the default checked value is.

Specified by:
setDefaultChecked in interface SubmittableElement
Parameters:
defaultChecked - the default checked state to use when this element gets reset, if applicable
See Also:
SubmittableElement.setDefaultChecked(boolean), HtmlRadioButtonInput.setDefaultChecked(boolean), HtmlCheckBoxInput.setDefaultChecked(boolean)

isDefaultChecked

public boolean isDefaultChecked()
Returns the default checked state to use when this element gets reset, if applicable. The default implementation returns false; only checkboxes and radio buttons really care what the default checked value is.

Specified by:
isDefaultChecked in interface SubmittableElement
Returns:
the default checked state to use when this element gets reset, if applicable
See Also:
SubmittableElement.isDefaultChecked(), HtmlRadioButtonInput.isDefaultChecked(), HtmlCheckBoxInput.isDefaultChecked()

setChecked

public Page setChecked(boolean isChecked)
Sets the "checked" attribute, returning the page that occupies this input's window after setting the attribute. Note that the returned page may or may not be the original page, depending on the presence of JavaScript event handlers, etc.

Parameters:
isChecked - true if this element is to be selected
Returns:
the page that occupies this input's window after setting the attribute

setReadOnly

public void setReadOnly(boolean isReadOnly)
Sets the "readOnly" attribute.

Parameters:
isReadOnly - true if this element is read only

isChecked

public boolean isChecked()
Returns true if this element is currently selected.

Returns:
true if this element is currently selected

isReadOnly

public boolean isReadOnly()
Returns true if this element is read only.

Returns:
true if this element is read only

click

public <P extends Page> P click(int x,
                                int y)
                     throws java.io.IOException,
                            ElementNotFoundException
Simulate clicking this input with a pointing device. The x and y coordinates of the pointing device will be sent to the server.

Type Parameters:
P - the page type
Parameters:
x - the x coordinate of the pointing device at the time of clicking
y - the y coordinate of the pointing device at the time of clicking
Returns:
the page that is loaded after the click has taken place
Throws:
java.io.IOException - If an io error occurs
ElementNotFoundException - If a particular XML element could not be found in the DOM model


Copyright © 2002-2011 Gargoyle Software Inc.. All Rights Reserved.