Package org.htmlunit.html
Class HtmlButton
- java.lang.Object
-
- org.htmlunit.html.DomNode
-
- org.htmlunit.html.DomNamespaceNode
-
- org.htmlunit.html.DomElement
-
- org.htmlunit.html.HtmlElement
-
- org.htmlunit.html.HtmlButton
-
- All Implemented Interfaces:
java.io.Serializable
,java.lang.Cloneable
,DisabledElement
,FormFieldWithNameHistory
,LabelableElement
,SubmittableElement
,ValidatableElement
,org.w3c.dom.Element
,org.w3c.dom.Node
public class HtmlButton extends HtmlElement implements DisabledElement, SubmittableElement, LabelableElement, FormFieldWithNameHistory, ValidatableElement
Wrapper for the HTML element "button".- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.htmlunit.html.HtmlElement
HtmlElement.DisplayStyle
-
Nested classes/interfaces inherited from class org.htmlunit.html.DomElement
DomElement.ChildElementsIterator
-
Nested classes/interfaces inherited from class org.htmlunit.html.DomNode
DomNode.ChildIterator, DomNode.DescendantElementsIterator<T extends DomNode>
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
TAG_NAME
The HTML tag represented by this element.-
Fields inherited from class org.htmlunit.html.HtmlElement
ATTRIBUTE_CHECKED, ATTRIBUTE_REQUIRED, TAB_INDEX_OUT_OF_BOUNDS
-
Fields inherited from class org.htmlunit.html.DomElement
ATTRIBUTE_NOT_DEFINED, ATTRIBUTE_VALUE_EMPTY, ID_ATTRIBUTE, NAME_ATTRIBUTE, SRC_ATTRIBUTE, TYPE_ATTRIBUTE, VALUE_ATTRIBUTE
-
Fields inherited from class org.htmlunit.html.DomNode
PROPERTY_ELEMENT, READY_STATE_COMPLETE, READY_STATE_INTERACTIVE, READY_STATE_LOADED, READY_STATE_LOADING, READY_STATE_UNINITIALIZED
-
Fields inherited from interface org.htmlunit.html.DisabledElement
ATTRIBUTE_DISABLED
-
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
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected boolean
doClickStateUpdate(boolean shiftKey, boolean ctrlKey)
This method implements the control state update part of the click action.java.lang.String
getAccessKeyAttribute()
Returns the value of the attributeaccesskey
.HtmlElement.DisplayStyle
getDefaultStyleDisplay()
INTERNAL API - SUBJECT TO CHANGE AT ANY TIME - USE AT YOUR OWN RISK.
Returns the default display style.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 attributedisabled
.java.lang.String
getNameAttribute()
Returns the value of the attributename
.java.util.Collection<java.lang.String>
getNewNames()
Get all the names this field got after the original one.java.lang.String
getOnBlurAttribute()
Returns the value of the attributeonblur
.java.lang.String
getOnFocusAttribute()
Returns the value of the attributeonfocus
.java.lang.String
getOriginalName()
Gets the first value of thename
attribute of this field before any change.NameValuePair[]
getSubmitNameValuePairs()
Returns an array ofNameValuePair
s 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 attributetabindex
.java.lang.String
getType()
java.lang.String
getTypeAttribute()
Returns the value of the attributetype
.java.lang.String
getValueAttribute()
Returns the value of the attributevalue
.boolean
handles(org.htmlunit.javascript.host.event.Event event)
Indicates if the provided event can be applied to this node.boolean
isCustomErrorValidityState()
boolean
isDefaultChecked()
Returns the default checked state to use when this element gets reset, if applicable.boolean
isDisabled()
Returnstrue
if the disabled attribute is set for this element.protected boolean
isEmptyXmlTagExpanded()
Indicates if a node without children should be written in expanded form as XML (i.e. with closing tag rather than with "/>")boolean
isFormNoValidate()
boolean
isReadOnly()
Returnstrue
if this element is read only.boolean
isValid()
Returns whether this element satisfies all form validation constraints set.boolean
isValidValidityState()
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).protected void
setAttributeNS(java.lang.String namespaceURI, java.lang.String qualifiedName, java.lang.String attributeValue, boolean notifyAttributeChangeListeners, boolean notifyMutationObservers)
Sets the value of the attribute specified by namespace and qualified name.void
setCustomValidity(java.lang.String message)
Sets the custom validity message for the element to the specified message.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.void
setFormNoValidate(boolean noValidate)
Sets the value of the attributeformnovalidate
.void
setValueAttribute(java.lang.String newValue)
Sets the content of thevalue
attribute.boolean
willValidate()
-
Methods inherited from class org.htmlunit.html.HtmlElement
acceptChar, addHtmlAttributeChangeListener, appendChildIfNoneExists, checkChildHierarchy, cloneNode, detach, doType, doType, fireHtmlAttributeAdded, fireHtmlAttributeRemoved, fireHtmlAttributeReplaced, getCanonicalXPath, getElementsByAttribute, getEnclosingElement, getEnclosingForm, getEnclosingFormOrDie, getLangAttribute, getNodeName, getOnClickAttribute, getOnDblClickAttribute, getOneHtmlElementByAttribute, getOnKeyDownAttribute, getOnKeyPressAttribute, getOnKeyUpAttribute, getOnMouseDownAttribute, getOnMouseMoveAttribute, getOnMouseOutAttribute, getOnMouseOverAttribute, getOnMouseUpAttribute, getSrcAttributeNormalized, getTabIndex, getTextDirectionAttribute, getXmlLangAttribute, hasEventHandlers, isAltPressed, isAttributeCaseSensitive, isCtrlPressed, isDisplayed, isHidden, isOptional, isRequired, isRequiredSupported, isShiftPressed, isSubmittableByEnter, notifyAttributeChangeListeners, removeAttribute, removeChild, removeHtmlAttributeChangeListener, setAttributeNode, setOwningForm, setRequired, type, type, type, type, typeDone
-
Methods inherited from class org.htmlunit.html.DomElement
blur, click, click, click, click, click, dblClick, dblClick, doClickFireChangeEvent, doClickFireClickEvent, fireEvent, fireEvent, focus, getAttribute, getAttributeDirect, getAttributeNode, getAttributeNodeNS, getAttributeNS, getAttributes, getAttributesMap, getChildElementCount, getChildElements, getElementsByTagName, getElementsByTagNameNS, getEventTargetElement, getFirstElementChild, getId, getLastElementChild, getNodeType, getSchemaTypeInfo, getStyleElement, getStyleElementCaseInSensitive, getStyleMap, getTagName, hasAttribute, hasAttributeNS, hasAttributes, isDisabledElementAndDisabled, isMouseOver, isStateUpdateFirst, matches, mouseDown, mouseDown, mouseMove, mouseMove, mouseOut, mouseOut, mouseOver, mouseOver, mouseUp, mouseUp, preventDefault, printOpeningTagContentAsXml, printXml, propagateClickStateUpdateToParent, removeAttributeNode, removeAttributeNS, removeFocus, removeStyleAttribute, replaceStyleAttribute, rightClick, rightClick, setAttribute, setAttributeNodeNS, setAttributeNS, setDefaults, setId, setIdAttribute, setIdAttributeNode, setIdAttributeNS, setInnerHtml, setNodeValue, toString, writeStyleToElement
-
Methods inherited from class org.htmlunit.html.DomNamespaceNode
getLocalName, getLowercaseName, getNamespaceURI, getPrefix, getQualifiedName, processImportNode, setPrefix
-
Methods inherited from class org.htmlunit.html.DomNode
addCharacterDataChangeListener, addDomChangeListener, appendChild, asNormalizedText, asXml, basicRemove, closest, compareDocumentPosition, fireCharacterDataChanged, fireNodeAdded, fireNodeDeleted, getAncestors, getBaseURI, getByXPath, getByXPath, getChildNodes, getChildren, getDescendants, getDomElementDescendants, getEndColumnNumber, getEndLineNumber, getFeature, getFirstByXPath, getFirstByXPath, getFirstChild, getHtmlElementDescendants, getHtmlPageOrNull, getIndex, getLastChild, getNextElementSibling, getNextSibling, getNodeValue, getOwnerDocument, getPage, getParentNode, getPreviousElementSibling, getPreviousSibling, getReadyState, getScriptableObject, getSelectorList, getStartColumnNumber, getStartLineNumber, getTextContent, getUserData, getVisibleText, hasChildNodes, hasFeature, insertBefore, insertBefore, isAncestorOf, isAncestorOfAny, isAttachedToPage, isDefaultNamespace, isEqualNode, isSameNode, isSupported, lookupNamespaceURI, lookupPrefix, mayBeDisplayed, normalize, notifyIncorrectness, onAddedToDocumentFragment, onAddedToPage, onAllChildrenAddedToPage, parseHtmlSnippet, printChildrenAsXml, querySelector, querySelectorAll, quietlyRemoveAndMoveChildrenTo, remove, removeAllChildren, removeCharacterDataChangeListener, removeChild, removeDomChangeListener, replace, replaceChild, setEndLocation, setParentNode, setReadyState, setScriptableObject, setStartLocation, 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, setPrefix, setTextContent, setUserData
-
Methods inherited from interface org.htmlunit.html.ValidatableElement
hasBadInputValidityState, hasPatternMismatchValidityState, hasRangeOverflowValidityState, hasRangeUnderflowValidityState, hasTypeMismatchValidityState, isStepMismatchValidityState, isTooLongValidityState, isTooShortValidityState, isValueMissingValidityState
-
-
-
-
Field Detail
-
TAG_NAME
public static final java.lang.String TAG_NAME
The HTML tag represented by this element.- See Also:
- Constant Field Values
-
-
Method Detail
-
setValueAttribute
public void setValueAttribute(java.lang.String newValue)
Sets the content of thevalue
attribute.- Parameters:
newValue
- the new content
-
doClickStateUpdate
protected boolean doClickStateUpdate(boolean shiftKey, boolean ctrlKey) throws java.io.IOException
This method implements the control state update part of the click action.The default implementation only calls doClickStateUpdate on parent's DomElement (if any). Subclasses requiring different behavior (like
HtmlSubmitInput
) will override this method.- Overrides:
doClickStateUpdate
in classDomElement
- Parameters:
shiftKey
-true
if SHIFT is pressedctrlKey
-true
if CTRL is pressed- Returns:
- true if doClickFireEvent method has to be called later on (to signal, that the value was changed)
- Throws:
java.io.IOException
- if an IO error occurs
-
isDisabled
public final boolean isDisabled()
Returnstrue
if the disabled attribute is set for this element.- Specified by:
isDisabled
in interfaceDisabledElement
- Returns:
true
if the disabled attribute is set for this element
-
isReadOnly
public boolean isReadOnly()
Returnstrue
if this element is read only.- Returns:
true
if this element is read only
-
getSubmitNameValuePairs
public NameValuePair[] getSubmitNameValuePairs()
Returns an array of
NameValuePair
s 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:
getSubmitNameValuePairs
in interfaceSubmittableElement
- Returns:
- the values that will be sent back to the server whenever this element's containing form is submitted
-
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 interfaceSubmittableElement
- 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.- Specified by:
setDefaultValue
in interfaceSubmittableElement
- Parameters:
defaultValue
- the default value to use when this element gets reset, if applicable- See Also:
SubmittableElement.setDefaultValue(String)
-
getDefaultValue
public java.lang.String getDefaultValue()
Returns the default value to use when this element gets reset, if applicable.- Specified by:
getDefaultValue
in interfaceSubmittableElement
- 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. This implementation is empty; only checkboxes and radio buttons really care what the default checked value is.- Specified by:
setDefaultChecked
in interfaceSubmittableElement
- 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. This implementation returnsfalse
; only checkboxes and radio buttons really care what the default checked value is.- Specified by:
isDefaultChecked
in interfaceSubmittableElement
- Returns:
- the default checked state to use when this element gets reset, if applicable
- See Also:
SubmittableElement.isDefaultChecked()
,HtmlRadioButtonInput.isDefaultChecked()
,HtmlCheckBoxInput.isDefaultChecked()
-
handles
public boolean handles(org.htmlunit.javascript.host.event.Event event)
Indicates if the provided event can be applied to this node. Overwrite this.- Overrides:
handles
in classHtmlElement
- Parameters:
event
- the event- Returns:
false
if the event can't be applied
-
getNameAttribute
public final java.lang.String getNameAttribute()
Returns the value of the attributename
. 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()
Returns the value of the attributevalue
. 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
-
getTypeAttribute
public final java.lang.String getTypeAttribute()
Returns the value of the attributetype
. Refer to the HTML 4.01 documentation for details on the use of this attribute.- Returns:
- the value of the attribute
type
or the default value if that attribute isn't defined
-
getType
public java.lang.String getType()
- Returns:
- the normalized type value (submit|reset|button).
-
getDisabledAttribute
public final java.lang.String getDisabledAttribute()
Returns the value of the attributedisabled
. Refer to the HTML 4.01 documentation for details on the use of this attribute.- Specified by:
getDisabledAttribute
in interfaceDisabledElement
- Returns:
- the value of the attribute
disabled
or an empty string if that attribute isn't defined
-
getTabIndexAttribute
public final java.lang.String getTabIndexAttribute()
Returns the value of the attributetabindex
. 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 attributeaccesskey
. 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 attributeonfocus
. 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 attributeonblur
. 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
-
setAttributeNS
protected void setAttributeNS(java.lang.String namespaceURI, java.lang.String qualifiedName, java.lang.String attributeValue, boolean notifyAttributeChangeListeners, boolean notifyMutationObservers)
Sets the value of the attribute specified by namespace and qualified name.- Overrides:
setAttributeNS
in classHtmlElement
- Parameters:
namespaceURI
- the URI that identifies an XML namespacequalifiedName
- the qualified name (prefix:local) of the attributeattributeValue
- the value of the attributenotifyAttributeChangeListeners
- to notify the associatedHtmlAttributeChangeListener
snotifyMutationObservers
- to notifyMutationObserver
s or not
-
getOriginalName
public java.lang.String getOriginalName()
Gets the first value of thename
attribute of this field before any change.- Specified by:
getOriginalName
in interfaceFormFieldWithNameHistory
- Returns:
- the original name (which is the same as the current one when no change has been made)
-
getNewNames
public java.util.Collection<java.lang.String> getNewNames()
Get all the names this field got after the original one.- Specified by:
getNewNames
in interfaceFormFieldWithNameHistory
- Returns:
- an empty collection if the name attribute has never been changed.
-
getDefaultStyleDisplay
public HtmlElement.DisplayStyle getDefaultStyleDisplay()
INTERNAL API - SUBJECT TO CHANGE AT ANY TIME - USE AT YOUR OWN RISK.
Returns the default display style.- Overrides:
getDefaultStyleDisplay
in classHtmlElement
- Returns:
- the default display style
-
isEmptyXmlTagExpanded
protected boolean isEmptyXmlTagExpanded()
Indicates if a node without children should be written in expanded form as XML (i.e. with closing tag rather than with "/>")- Overrides:
isEmptyXmlTagExpanded
in classDomElement
- Returns:
true
to make generated XML readable as HTML.
-
isValid
public boolean isValid()
Returns whether this element satisfies all form validation constraints set.- Overrides:
isValid
in classHtmlElement
- Returns:
- whether this element satisfies all form validation constraints set
-
willValidate
public boolean willValidate()
- Specified by:
willValidate
in interfaceValidatableElement
- Returns:
- whether the element is a candidate for constraint validation
-
setCustomValidity
public void setCustomValidity(java.lang.String message)
Sets the custom validity message for the element to the specified message.- Specified by:
setCustomValidity
in interfaceValidatableElement
- Parameters:
message
- the new message
-
isCustomErrorValidityState
public boolean isCustomErrorValidityState()
- Specified by:
isCustomErrorValidityState
in interfaceValidatableElement
- Returns:
- a boolean value indicating whether the element's custom validity message has been set to a non-empty string by calling the element's setCustomValidity() method.
-
isValidValidityState
public boolean isValidValidityState()
- Specified by:
isValidValidityState
in interfaceValidatableElement
- Returns:
- true if the element meets all its validation constraints, and is therefore considered to be valid, or false if it fails any constraint. If true, the element matches the :valid CSS pseudo-class; the :invalid CSS pseudo-class otherwise.
-
isFormNoValidate
public final boolean isFormNoValidate()
- Returns:
- the value of the attribute
formnovalidate
or an empty string if that attribute isn't defined
-
setFormNoValidate
public final void setFormNoValidate(boolean noValidate)
Sets the value of the attributeformnovalidate
.- Parameters:
noValidate
- the value of the attributeformnovalidate
-
-