Modify innerHTML using Selenium
Asked Answered
A

3

12

I have this element:

WebElement element = ...
string val = element.getAttribute("innerHTML");

All I want to do is to change this innerHTML on my web page.
Is it possible?

Avocet answered 10/3, 2016 at 16:39 Comment(1)
Welcome to Stack Overflow! In order to get a good reception here, you should show what you have tried. Have you tried some things to change the innerHtml? Have you searched the web for ways of doing this, and if so, what have you found? Please edit your question and tell us what you've found and what you've tried. It can make the difference between getting useful answers and getting downvoted and closed. Good luck!Booboo
R
25

Try this:

WebElement element = ...
((JavascriptExecutor)driver).executeScript(
  "var ele=arguments[0]; ele.innerHTML = 'my new content';", element);
Retrace answered 10/3, 2016 at 20:1 Comment(0)
C
7

Selenium WebDriver does not have any direct methods to do so to change the DOM itself. However we can use JavascriptExecutor to use javascript to modify the DOM.

check this example to change the background color. You will get an idea to change the innerHTML as well.

Corena answered 10/3, 2016 at 19:47 Comment(0)
U
6

in python use this :

element = driver.find_element_by_id("some_id")
driver.execute_script("arguments[0].innerText = 'what_you_want_to_show'", element)
Untenable answered 31/5, 2020 at 10:50 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.