diego
diego

Reputation: 150

How to choose an element that is not in DOM

Web-site https://account.mail.ru/signup I try take some position in select "Дата рождения" - "День". Xpath for expant select "День" //span[text()='День']/ancestor::div[@class='Select-control'] Then a try select some day, but possition of day don't exist in POM.

Please, help me make correct XPATH.

Upvotes: 0

Views: 660

Answers (1)

SeleniumUser
SeleniumUser

Reputation: 4177

You can try below code to select day from your drop down box :

driver.get('https://account.mail.ru/signup')
driver.maximize_window()

wait = WebDriverWait(driver, 20)

wait.until(EC.element_to_be_clickable((By.XPATH, "//div[@id='react-select-2--value']//div[@class='Select-placeholder']"))).click()
element = wait.until(EC.element_to_be_clickable((By.XPATH, "//div[@class='Select-option']//span[contains(text(),'12')]"))).click()

Note : please add below imports to your solution

from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait

To inspect react-select drop down

  1. Open chrome browser
  2. Open Dev tool
  3. Navigate to Elements
  4. Select Event Listeners
  5. Select blur
  6. Click on remove under document

enter image description here

Upvotes: 2

Related Questions