Collections:
Hidden Input Field with WebDriver in Python
How to update hidden input value field value with WebDriver in Python?
✍: FYIcenter.com
Normally, a hidden input value field is used to hide some value in the Web page. The hidden value is passed back to the Web server when the page is submitted. You should not change the hidden value.
But if you really want to update the hidden value, you have 2 options:
Here is an example program that uses both options to update hidden values
# UpdateHiddenValue.py # Copyright (c) FYIcenter.com from selenium.webdriver import Chrome driver = Chrome() driver.get("file:///C:/fyicenter/HiddenValue.html") # update hidden value directly input = driver.find_element_by_name("cost") driver.execute_script("arguments[0].value='9.00';",input) # make input visible with no value, and enter new value input = driver.find_element_by_name("margin") driver.execute_script("arguments[0].type='text';",input) driver.execute_script("arguments[0].value='';",input) input.send_keys("10.00") # submit the form form = driver.find_element_by_tag_name("form") form.submit() # check submitted values print(driver.current_url) driver.close()
To test the above program, you can use the following HTML file, HiddenValue.html:
<html> <body> <p>Form with with hidden values:</p> <form method="get" action="submit.html"> Cost: $?<input name="cost" type="hidden" value="10.00"/><br/> Margin: %?<input name="margin" type="hidden" value="50.00"/><br/> Price: $<input name="price" type="text" value="20.00"/><br/> </form> </body> </html>
Run the program:
C:\fyicenter> python UpdateHiddenValue.py file:///C:/fyicenter/submit.html?cost=9.00&margin=10.00&price=20.00
The output shows that both options work correctly.
Note that you don't change the input type from "hidden" to "text', send_keys() will give you the "selenium.common.exceptions.ElementNotInteractableException: Message: element not interactable" error.
You also need to remove the existing value with "arguments[0].value='';" script. Otherwise, send_keys() will append new value to the old value.
⇒ Disabled Input Field with WebDriver in Python
⇐ Load HTML Files with WebDriver in Python
2023-07-24, 12962🔥, 1💬
Popular Posts:
How to validate and decode MAC (Media Access Control) addresses? In order to help your programming o...
How to convert a date and time to a standard format? Date and time can be displayed in a number of s...
How to generate user birthday dates? Test user birthday dates are frequently needed in testing appli...
How to convert hexadecimal encoded data back to binary data (or Hex to Binary Decoding)? Hex to Bina...
Where to find test data generators? FYIcenter.com has prepared a number of test data generators for ...