Поиск элемента с помощью последовательных селекторов



  • Друзья, приветствую всех.

    Требуется Ваша помощь в использовании селекторов. Как всегда, за рабочий вариант отблагодарю монетой :)

    Есть код:

    <div>
    <input type="hidden" id="adgroup-name-ABC123">
    <a class="sc-clNaTc kPeaHb"  href="ya.ru>test</a>
    </div>
    
    

    Как можно найти элемент в такой последовательности:
    (id содержит "adgroup-name" и далее class="sc-clNaTc kPeaHb")?

    По отдельности я могу найти эти элементы, а как сделать в последовательности? Чтобы нашёлся элемент с классом class="sc-clNaTc kPeaHb" у которого в блоке <div> есть элемент id, который содержит "adgroup-name"? Предпочтительнее если это будет сделано через XPATH или MATCH.



  • @tochka вообще вариантов несколько. Можно с помощью if находить по отдельности каждый элемент и проверять...

    Можно попробовать вот такой вариант

    >MATCH>id="adgroup-name>XPATH>//div/*[@class='sc-clNaTc kPeaHb']
    

    Я бы рекомендовал что то типо такого, но видимо не подойдет)

     >XPATH> //div/*[@id='adgroup-name-ABC123']  >XPATH> //div/*[@class='sc-clNaTc kPeaHb']
    

    Если id или class будут другими, то данные конструкции ничего не найдут, поскольку они ищут двойное совпадение сразу.



  • Посмотреть бы код, а так вот еще вариант, может подойдет

    //div/input[contains(@id, 'adgroup-name')]/following-sibling::a[contains(@class, 'sc-clNaTc kPeaHb')]
    

    Может сработать, если элементы и классы не меняются и расположены в одном div'e

    P.S. В вашем коде ошибочка -

    href="ya.ru
    

    забыли кавычки закрыть, без нее не работает само собой



  • Всем спасибо за помощь. Вариант @inwnew оказался рабочим, большое спасибо. Пришли номер кошелька, куда благодарность скинуть :)



  • @tochka said in Поиск элемента с помощью последовательных селекторов:

    Всем спасибо за помощь. Вариант @inwnew оказался рабочим, большое спасибо. ...

    Этого достаточно :)


Log in to reply
 

  • 2
  • 3
  • 7
  • 5
  • 2
  • 8
  • 1
  • 5