5
Chciałbym użyć xpath, aby wybrać łącze, którego class="watchListItem"
, span="icon icon_checked"
i h3="a test"
. Mogę użyć xpath, aby uzyskać pasujący link i span, lub link i h3, ale nie link, zakres i h3.Xpath - Uzyskaj klasę nadrzędną przez dopasowanie dwóch węzłów potomnych
Oto co próbowałem:
//*[@class = 'watchListItem']/span[@class = 'icon icon_checked']
//*[@class= 'watchListItem']/h3[text()='AA']
szukam czegoś takiego:
//*[@class = 'watchListItem']//*[span[@class = 'icon icon_checked'] and h3[text()='AA']]
<li>
<a class="watchListItem" data-id="thisid1" href="javascript:void(0);">
<span class="icon icon_checked"/>
<h3 class="itemList_heading">a test</h3>
</a>
</li>
<li>
<a class="watchListItem" data-id="thisid2" href="javascript:void(0);">
<span class="icon icon_unchecked"/>
<h3 class="itemList_heading">another test</h3>
</a>
</li>
<li>
<a class="watchListItem" data-id="thisid3" href="javascript:void(0);">
<span class="icon icon_checked"/>
<h3 class="itemList_heading">yet another test</h3>
</a>
</li>
Wpadłem na podobną odpowiedź, ale użyłem '.// span' zamiast' child :: span'. Czy wiesz, jaka jest różnica? Czy ':: child' wybierze tylko dzieci bezpośrednie, czy też wybierze potomka? To nie ma znaczenia w sprawie. Po prostu ciekawy. – Ben
:: potomek to robi, :: dziecko powinno wybierać tylko najbliższe dzieci :) @Ben –
@Ben choć .// wybrałoby potomków, nie tylko dzieci. –