2017-01-11 2 views
0

Я обращаюсь к веб-сайту с webdriver, и я хочу изменить его элемент.WebDriver получает элемент java

Я хочу знать, как получить доступ к элементу и изменить его. В этом случае я хочу, чтобы добавить текст к элементу, т.е. преобразовать это:

<span data-id="tag-dist-Lisboa" title="Para eliminar uma das opções, faça duplo clique."> 
</span> 

в этом:

<span data-id="tag-dist-Lisboa" title="Para eliminar uma das opções, faça duplo clique."> 
    Some random text 
</span> 

Моя главная задача была найти элемент.

Я добавил выше некоторых из HTML, если вам нужна дополнительная информация, сообщите об этом.

+0

вам необходимо предоставить окружающий html, его невозможно идентифицировать с помощью того, что вы предоставили. – Cathal

+0

html code – user3636673

+0

Задайте вопрос немного проще, чтобы другие могли легко понять, на что вы застряли. Также подумайте над добавлением конкретной ошибки, которую вы получаете (если есть), поскольку это поможет другим определить проблему. – xlm

ответ

0

Как я уже писал один ответ на свой предыдущий Вопрос-

Используйте следующий код, чтобы установить значение для span tag-

int textLength = driver.findElement(By.xpath("//span[@data-id='tag-dist-Lisboa']")).getText().length(); 

if(textLength<=0) 
{ 

    WebElement element = driver.findElement(By.xpath("//span[@data-id='tag-dist-Lisboa']")); 
    JavascriptExecutor js= (JavascriptExecutor)driver; 
    js.executeScript("arguments[0].innerText = 'Your Text Here'", element); 
} 

Объяснение: -

Найдите требуемый span тег с атрибутом data-id и проверить, содержит ли он текст или нет. Если да, используйте это текстовое значение в соответствии с вашим выбором.

Если нет, то установите ваш необходимый текст для этого span тега

Дайте нам знать, так ли это на ваш вопрос или какой-либо другой вы хотите сделать?

+0

Это возвращает ошибку 'org.openqa.selenium.NoSuchElementException: Не удается найти узел, используя // пядь [@ данных ID = 'тег-DIST-Lisboa']' В веб-сайте, если скопировать XPath в элементе он отображает '// * [@ id =" searchform "]/div [2]/div/form/div [4]/div [1]/div [1]/span', но даже с тем, что он возвращает та же ошибка. – user3636673

+0

Можете ли вы добавить еще несколько «html», которые у вас выше и ниже тега span – NarendraR

+0

html, добавленного выше – user3636673

Смежные вопросы