Supponiamo che io abbia questo (semplificato):
<form id="myform">
<!-- some input fields -->
<input type="submit" value="proceed"/>
</form>
Quindi posso selezionare il pulsante di invio di XPath //form[@id='myform']/input[@type='submit']
. Grande.
Tuttavia, i miei modelli potrebbero cambiare e voglio essere flessibile nella profondità in cui si trova il pulsante di invio. Potrebbe essere messo in una tabella, come questa:
<form id="myform">
<!-- some input fields -->
<table><tr><td>
<input type="submit" value="proceed"/>
</td></tr></table>
</form>
So di poter selezionare elementi che sono nipoti, ma non posso selezionare grand-grand-grand -...- bambini di qualsiasi profondità. Per esempio:
//form[@id='myform']/*/input[@type='submit']
seleziona solo nipoti, senza ulteriori profondità.//form[@id='myform']/*/*/input[@type='submit']
seleziona solo i nipoti, non più o meno profondità.//form[@id='myform']/**/input[@type='submit']
non è valido.
Quindi, come faccio a selezionare questo pulsante di invio in modo affidabile senza utilizzare gli ID elemento?
//form//input
restituisce null in C # mentre Chrome può trovare 35 input utilizzando lo stesso xpath