*** title: Playwright Element Handle description: Complete Element Handle method reference for the Playwright driver. -------------------------------------------------------------------------------- All `Element Handle` methods available when using the **Playwright** driver. Access via `elementHandle` after launching a Playwright runtime. Every method below is a remote call. The SDK translates it into a structured step sent to a single endpoint: ``` POST /v1/workspaces/{workspaceId}/execute ``` ```json { "runtime": "my-browser", "steps": [ { "call": "element.goto", "args": ["https://example.com"] } ] } ``` The `call` field maps directly to the method name. `args` is a JSON array of the method's arguments. You can batch multiple steps in one request. ## Actions ### click(options?) Click the element. This method clicks the element by performing actionability checks, scrolling into view, and simulating a mouse click. Discouraged in favor of locator.click(). ```ts await elementHandle.click(); ``` | Parameter | Type | Required | Description | | --------- | ------------------------ | -------- | ----------- | | `options` | `PlaywrightClickOptions` | No | — | [Upstream docs](https://playwright.dev/docs/api/class-elementhandle#element-handle-click) *** ### dblclick(options?) Double-click the element. Discouraged in favor of locator.dblclick(). ```ts await elementHandle.dblclick(); ``` | Parameter | Type | Required | Description | | --------- | ------------------------ | -------- | ----------- | | `options` | `PlaywrightClickOptions` | No | — | [Upstream docs](https://playwright.dev/docs/api/class-elementhandle#element-handle-dblclick) *** ### fill(value, options?) Fill an input, textarea, or contenteditable element with the specified value. This method waits for actionability checks, focuses the element, fills it, and triggers an input event. Pass empty string to clear. Discouraged in favor of locator.fill(). ```ts await elementHandle.fill('...'); ``` | Parameter | Type | Required | Description | | --------- | ----------------------- | -------- | ----------- | | `value` | `string` | Yes | — | | `options` | `PlaywrightFillOptions` | No | — | [Upstream docs](https://playwright.dev/docs/api/class-elementhandle#element-handle-fill) *** ### type(text, options?) Focus the element and type text into it character by character. Deprecated: In most cases use locator.fill() instead. Only use this for special keyboard handling. For special keys use press(). ```ts await elementHandle.type('...'); ``` | Parameter | Type | Required | Description | | --------- | ----------------------- | -------- | ----------- | | `text` | `string` | Yes | — | | `options` | `PlaywrightTypeOptions` | No | — | [Upstream docs](https://playwright.dev/docs/api/class-elementhandle#element-handle-type) *** ### press(key, options?) Focus the element and press a key or key combination. Key can be a single character or a special key like "Enter", "Control+a", "Shift+ArrowDown". Discouraged in favor of locator.press(). ```ts await elementHandle.press('...'); ``` | Parameter | Type | Required | Description | | --------- | ------------------------ | -------- | ----------- | | `key` | `string` | Yes | — | | `options` | `PlaywrightPressOptions` | No | — | [Upstream docs](https://playwright.dev/docs/api/class-elementhandle#element-handle-press) *** ### hover(options?) Hover over the element. This method hovers over the element by performing actionability checks, scrolling into view, and simulating mouse hover. Discouraged in favor of locator.hover(). ```ts await elementHandle.hover(); ``` | Parameter | Type | Required | Description | | --------- | ------------------------ | -------- | ----------- | | `options` | `PlaywrightHoverOptions` | No | — | [Upstream docs](https://playwright.dev/docs/api/class-elementhandle#element-handle-hover) *** ### focus() Focus the element. Discouraged in favor of locator.focus(). ```ts await elementHandle.focus(); ``` [Upstream docs](https://playwright.dev/docs/api/class-elementhandle#element-handle-focus) *** ### tap(options?) Tap the element (for touch devices). This method taps the element by performing actionability checks, scrolling into view, centering, and dispatching touchstart/touchend events. Discouraged in favor of locator.tap(). ```ts await elementHandle.tap(); ``` | Parameter | Type | Required | Description | | --------- | ---------------------- | -------- | ----------- | | `options` | `PlaywrightTapOptions` | No | — | [Upstream docs](https://playwright.dev/docs/api/class-elementhandle#element-handle-tap) *** ### check(options?) Check a checkbox or radio element. If the element is already checked, this method returns immediately. Discouraged in favor of locator.check(). ```ts await elementHandle.check(); ``` | Parameter | Type | Required | Description | | --------- | ------------------------ | -------- | ----------- | | `options` | `PlaywrightCheckOptions` | No | — | [Upstream docs](https://playwright.dev/docs/api/class-elementhandle#element-handle-check) *** ### uncheck(options?) Uncheck a checkbox element. If the element is already unchecked, this method returns immediately. Discouraged in favor of locator.uncheck(). ```ts await elementHandle.uncheck(); ``` | Parameter | Type | Required | Description | | --------- | ------------------------ | -------- | ----------- | | `options` | `PlaywrightCheckOptions` | No | — | [Upstream docs](https://playwright.dev/docs/api/class-elementhandle#element-handle-uncheck) *** ### setChecked(checked, options?) Check or uncheck a checkbox or radio element. Discouraged in favor of locator.setChecked(). ```ts await elementHandle.setChecked(true); ``` | Parameter | Type | Required | Description | | --------- | ------------------------ | -------- | ----------- | | `checked` | `boolean` | Yes | — | | `options` | `PlaywrightCheckOptions` | No | — | [Upstream docs](https://playwright.dev/docs/api/class-elementhandle#element-handle-set-checked) *** ### selectOption(values, options?) Select one or more options in a \