elem_set_value()
sets the value of an HTML input element to a string.
Usage
elem_set_value(x, text, timeout = NULL)
elem_send_keys(x, ..., modifiers = NULL, timeout = NULL)
elem_clear_value(x, timeout = NULL)
Arguments
- x
A
selenider_element
object. Forelem_send_keys()
, this can beNULL
, meaning that the keys will be sent to the current page (or the currently focused element) instead of a specific element.- text
A string to set the value of the input element to.
- timeout
How long to wait for the element to exist.
- ...
A set of inputs to send to
x
.- modifiers
A character vector; one or more of "shift", "ctrl"/"control", "alt", and "command"/meta". Note that when using chromote as a backend, these do not work on Mac OS.
Details
elem_send_keys()
sends a set of inputs to an element.
elem_clear_value()
sets the value of an HTML element to ""
, removing any
existing content.
See also
Other actions:
elem_click()
,
elem_hover()
,
elem_scroll_to()
,
elem_select()
,
elem_submit()
Examples
html <- "
<input
type='text'
oninput='recordChange(event)'
onkeypress='return checkEnter(event);'
/>
<p></p>
"
js <- "
function recordChange(e) {
document.getElementsByTagName('p').item(0).innerText = e.target.value;
}
function checkEnter(e) {
// If the key pressed was Enter
if (e.keyCode == 13) {
document.getElementsByTagName('p').item(0).innerText = 'Enter pressed!';
return false;
}
return true;
}
"
session <- minimal_selenider_session(html, js = js)
elem_expect(s("p"), has_exact_text(""))
input <- s("input")
elem_set_value(input, "my text")
elem_expect(s("p"), has_text("my text"))
elem_clear_value(input)
elem_expect(s("p"), has_exact_text(""))
elem_send_keys(input, keys$enter)
elem_expect(s("p"), has_text("Enter pressed!"))