#java #html #selenium #xpath #onclick
#java #HTML #селен #xpath #onclick
Вопрос:
Я пытаюсь щелкнуть вкладку, которая доступна в меню приложения, но как только я пытаюсь захватить этот веб-элемент через xpath, он не работает и выдает ошибку «не удается найти элемент».
Выражение HTML выглядит следующим образом:
td width="132" height="37" align=center class="passive" id="2" style="CURSOR: hand" onclick="submit2(2)" rowSpan="1" colSpan="1"
xpath не работает для этого действия щелчка.
driver.findElement(By.xpath("//td[@onclick='submit2(2)']")).click();
Комментарии:
1. Вместо того, чтобы предоставлять созданный вручную HTML, обновите вопрос фактическим HTML и трассировкой стека ошибок
2. вопрос ясен
3. У вас есть идентификатор, почему бы не использовать его? Вы пробовали ждать? Вы убедились, что элемент не находится внутри
IFRAME
? Обновите свой вопрос различными попытками решить проблему и опубликуйте полное сообщение об ошибке.
Ответ №1:
Не видя table
полностью и с предположением, что, возможно, исходный html немного неправильный. Со следующим html;
<width="132" height="37" align=center class="passive" id="2" style="CURSOR: hand" onclick="submit2(2)" rowSpan="1" colSpan="1">
Я могу использовать this xpath для определения местоположения элемента, и при условии, что он достаточно уникален, чтобы не ошибочно принять его за другой элемент с тем же onclick
значением, это может помочь.
//*[@onclick='submit2(2)']
Однако мне не удалось создать фиктивную таблицу со следующим действительным HTML-кодом. Не стесняйтесь редактировать свой исходный пост с помощью окружающего html, и я исправлю его соответствующим образом 🙂