Class: Watir::Button

Inherits:
HTMLElement show all
Defined in:
lib/watir-webdriver/elements/button.rb,
lib/watir-webdriver/elements/html_elements.rb

Overview

Class representing button elements.

This class covers both

Constant Summary collapse

VALID_TYPES =
%w[button reset submit image]

Constants included from Atoms

Atoms::ATOMS

Instance Method Summary collapse

Methods inherited from HTMLElement

#access_key, #access_key_label, #command_checked?, #command_disabled?, #command_hidden?, #command_icon, #command_label, #command_type, #content_editable, #content_editable?, #context_menu, #dataset, #dir, #draggable?, #dropzone, #hidden?, #item_id, #item_prop, #item_ref, #item_scope?, #item_type, #item_value, #lang, #onabort, #onautocomplete, #onautocompleteerror, #onblur, #oncancel, #oncanplay, #oncanplaythrough, #onchange, #onclick, #onclose, #oncontextmenu, #oncuechange, #ondblclick, #ondrag, #ondragend, #ondragenter, #ondragexit, #ondragleave, #ondragover, #ondragstart, #ondrop, #ondurationchange, #onemptied, #onended, #onerror, #onfocus, #oninput, #oninvalid, #onkeydown, #onkeypress, #onkeyup, #onload, #onloadeddata, #onloadedmetadata, #onloadstart, #onmousedown, #onmouseenter, #onmouseleave, #onmousemove, #onmouseout, #onmouseover, #onmouseup, #onmousewheel, #onpause, #onplay, #onplaying, #onprogress, #onratechange, #onreset, #onresize, #onscroll, #onseeked, #onseeking, #onselect, #onshow, #onsort, #onstalled, #onsubmit, #onsuspend, #ontimeupdate, #ontoggle, #onvolumechange, #onwaiting, #properties, #spellcheck?, #tab_index, #title, #translate?

Methods inherited from Element

#==, #attribute_value, #browser, #class_name, #click, #double_click, #drag_and_drop_by, #drag_and_drop_on, #driver, #enabled?, #exists?, #fire_event, #flash, #focus, #focused?, #hash, #hover, #id, #initialize, #inner_html, #inspect, #outer_html, #parent, #present?, #right_click, #select_text, #send_keys, #style, #tag_name, #to_subtype, #visible?, #wd

Methods included from AttributeHelper

#attribute, #attribute_list, #inherit_attributes_from, #method, #typed_attributes

Methods included from EventuallyPresent

#wait_until_present, #wait_while_present, #when_enabled, #when_present

Methods included from Container

#a, #abbr, #abbrs, #address, #addresses, #animate, #animate_motion, #animate_motions, #animate_transform, #animate_transforms, #animates, #area, #areas, #article, #articles, #as, #aside, #asides, #audio, #audios, #b, #base, #bases, #bdi, #bdis, #bdo, #bdos, #blockquote, #blockquotes, #body, #bodys, #br, #brs, #bs, #button, #buttons, #canvas, #canvases, #caption, #captions, #checkbox, #checkboxes, #circle, #circles, #cite, #cites, #code, #codes, #col, #colgroup, #colgroups, #cols, #cursor, #cursors, #data, #datalist, #datalists, #datas, #dd, #dds, #defs, #defss, #del, #dels, #desc, #descs, #details, #detailses, #dfn, #dfns, #dialog, #dialogs, #discard, #discards, #div, #divs, #dl, #dls, #dt, #dts, #element, #elements, #ellipse, #ellipses, #em, #embed, #embeds, #ems, #extract_selector, #field_set, #field_sets, #fieldset, #fieldsets, #figcaption, #figcaptions, #figure, #figures, #file_field, #file_fields, #font, #fonts, #footer, #footers, #foreign_object, #foreign_objects, #forms, #frame, #frames, #frameset, #framesets, #g, #gs, #h1, #h1s, #h2, #h2s, #h3, #h3s, #h4, #h4s, #h5, #h5s, #h6, #h6s, #head, #header, #headers, #heads, #hgroup, #hgroups, #hidden, #hiddens, #hr, #hrs, #html, #htmls, #i, #iframe, #iframes, #image, #images, #img, #imgs, #input, #inputs, #ins, #inses, #is, #kbd, #kbds, #keygen, #keygens, #label, #legend, #legends, #li, #line, #linear_gradient, #linear_gradients, #lines, #link, #links, #lis, #main, #mains, #map, #maps, #mark, #marker, #markers, #marks, #menuitem, #menuitems, #menus, #mesh_gradient, #mesh_gradients, #mesh_patch, #mesh_patches, #mesh_row, #mesh_rows, #meta, #metadata, #metadatas, #metas, #meter, #meters, #mpath, #mpaths, #nav, #navs, #noscript, #noscripts, #object, #objects, #ol, #ols, #optgroup, #optgroups, #option, #options, #output, #outputs, #p, #param, #params, #path, #paths, #pattern, #patterns, #polygon, #polygons, #polyline, #polylines, #pre, #pres, #progress, #progresses, #ps, #q, #qs, #radial_gradient, #radial_gradients, #radio, #radios, #rect, #rects, #rp, #rps, #rt, #rts, #rubies, #ruby, #s, #samp, #samps, #script, #scripts, #section, #sections, #select, #select_list, #select_lists, #selects, #set, #sets, #small, #smalls, #source, #sources, #span, #spans, #ss, #stop, #stops, #strong, #strongs, #style, #styles, #sub, #subs, #summaries, #summary, #sup, #sups, #svg, #svgs, #switch, #switches, #symbol, #symbols, #table, #tables, #tbody, #tbodys, #td, #tds, #template, #templates, #text_field, #text_fields, #text_path, #text_paths, #textarea, #textareas, #tfoot, #tfoots, #th, #thead, #theads, #ths, #time, #times, #title, #titles, #tr, #track, #tracks, #trs, #tspan, #tspans, #u, #ul, #uls, #us, #use, #uses, #var, #vars, #video, #videos, #view, #views, #wbr, #wbrs

Methods included from Atoms

load

Methods included from XpathSupport

downcase, escape

Constructor Details

This class inherits a constructor from Watir::Element

Dynamic Method Handling

This class handles dynamic methods through the method_missing method in the class Watir::Element

Instance Method Details

#autofocus?Boolean



377
# File 'lib/watir-webdriver/elements/html_elements.rb', line 377

attribute("Boolean", :autofocus?, :autofocus)

#disabled?Boolean



378
# File 'lib/watir-webdriver/elements/html_elements.rb', line 378

attribute("Boolean", :disabled?, :disabled)

#formString



379
# File 'lib/watir-webdriver/elements/html_elements.rb', line 379

attribute(String, :form, :form)

#form_actionString



380
# File 'lib/watir-webdriver/elements/html_elements.rb', line 380

attribute(String, :form_action, :formAction)

#form_enctypeString



381
# File 'lib/watir-webdriver/elements/html_elements.rb', line 381

attribute(String, :form_enctype, :formEnctype)

#form_methodString



382
# File 'lib/watir-webdriver/elements/html_elements.rb', line 382

attribute(String, :form_method, :formMethod)

#form_no_validate?Boolean



383
# File 'lib/watir-webdriver/elements/html_elements.rb', line 383

attribute("Boolean", :form_no_validate?, :formNoValidate)

#form_targetString



384
# File 'lib/watir-webdriver/elements/html_elements.rb', line 384

attribute(String, :form_target, :formTarget)

#labelsString



392
# File 'lib/watir-webdriver/elements/html_elements.rb', line 392

attribute(String, :labels, :labels)


388
# File 'lib/watir-webdriver/elements/html_elements.rb', line 388

attribute(String, :menu, :menu)

#nameString



385
# File 'lib/watir-webdriver/elements/html_elements.rb', line 385

attribute(String, :name, :name)

#textString

Returns the text of the button.

For input elements, returns the "value" attribute. For button elements, returns the inner text.



24
25
26
27
28
29
30
31
32
33
34
35
# File 'lib/watir-webdriver/elements/button.rb', line 24

def text
  tn = tag_name

  case tn
  when 'input'
    value
  when 'button'
    super
  else
    raise Exception::Error, "unknown tag name for button: #{tn}"
  end
end

#typeString



386
# File 'lib/watir-webdriver/elements/html_elements.rb', line 386

attribute(String, :type, :type)

#validation_messageString



391
# File 'lib/watir-webdriver/elements/html_elements.rb', line 391

attribute(String, :validation_message, :validationMessage)

#validityString



390
# File 'lib/watir-webdriver/elements/html_elements.rb', line 390

attribute(String, :validity, :validity)

#valueString



387
# File 'lib/watir-webdriver/elements/html_elements.rb', line 387

attribute(String, :value, :value)

#will_validate?Boolean



389
# File 'lib/watir-webdriver/elements/html_elements.rb', line 389

attribute("Boolean", :will_validate?, :willValidate)