Справка по относительной XPath для тега HTML - PullRequest
0 голосов
/ 17 апреля 2019

Я пытаюсь создать относительный оператор селектора XPath для этого тега ниже:

<a class="bttn bttn--primary bttn--inline js-localizeButton" ><span class="bttn__content">Click Me</span></a>

но я не могу заставить его соответствовать. Вот что я попробовал:

//*[contains(text(),"Click Me")][1]

, который возвращает внутренний тег <span>, но не тег <a>, который я ищу.

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

'//a[@class="bttn"]'
'//*[@class="bttn"]'

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

1 Ответ

1 голос
/ 17 апреля 2019

//*[contains(text(),"Click Me")][1]

, который возвращает внутренний тег <span>, но не тег <a>, который я ищу.

Много способов...

"Отсюда до моего родителя"

//*[contains(text(),"Click Me")][1]/..

"Отсюда до моего родителя a"

//*[contains(text(),"Click Me")][1]/parent::a

"Отсюда до моего первогоa ancestor "

//*[contains(text(),"Click Me")][1]/ancestor::a[1]

" Элемент a, имеющий меня в качестве ребенка "

//a[*[contains(text(),"Click Me")]][1]

" Элемент a, имеющий меня в качестве потомка "

//a[.//*[contains(text(),"Click Me")]][1]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...