2013-05-14 5 views
0
<div class="field select-container invalid" data-tooltip="Error message." "name="birthDate"> 
<div class="stack-wrap gutter-col-wrap-1"> 
<div class="stack size1of3"> 
<div class="gutter-col-1"> 
    <div class="form-selectbox full-width"> 
    <select name="day"> 
     <option value="">Giorno</option> 
     <option value="01">1</option> 

При использовании WebElement el = browser.switchTo(). ActiveElement() основное внимание уделяется атрибуту «name». Необходимо найти родителя, который является «подсказкой данных», чтобы получить сообщение об ошибке на экране. Пожалуйста помоги.Как получить родительский элемент элемента в webdriver

+0

«основное внимание следует на« атрибут имени »? Не могли бы вы прояснить? «Нужно найти родителя, который является« подсказкой данных »? Вы имели в виду найти div с атрибутом data-tooltip? –

+0

Да, точно! нужно найти div с атрибутом data-tooltip. Всплывающая подсказка найдена на всей странице. Поэтому, чтобы получить текущую подсказку с фокусом на конкретном элементе, я сделал browser.switchTo(). ActiveElement(), а затем, когда я делаю el.getText(), он дает мне текст текущего элемента в фокусе. Но есть ситуация, когда основное внимание уделяется одному из атрибутов «name». Теперь, чтобы получить всплывающую подсказку, мне нужно пройти назад. В подсказке данных присутствует много мест, имеющих разные тексты. Поэтому доступ к тексту непосредственно через подсказку данных невозможно. – user2340124

ответ

1

Если я правильно понял вопрос правильно, вы хотите, чтобы найти текст о представлении данных TOOLTIP в от div.select-container для <select name="day">' только

Вот как это сделать в Java с XPATH в селекторе предка (непроверенных код):

WebElement selectDayContainer = driver.findElement(By.xpath("//select[@name='day']//ancestor::div[contains(@class, 'select-container')]")); 
String toolTip = selectDayContainer.getAttribute("data-tooltip"); 
+0

@ user2340124: У вас есть отзывы об этом? Это сработало для вас? –

1

Для нахождения только родительского элемента дочернего элемента может использоваться следующий код.

IWebElement parentElement = childElement.FindElement(By.XPath("..")); 
Смежные вопросы