9
votes

xPath Elément le plus proche à un élément donné

J'ai du mal à retourner un élément en utilisant XPath. J'ai besoin d'obtenir le texte du 2e TD à partir d'une grande table.

"//label[@for='PropertyA']"


0 commentaires

3 Réponses :


8
votes

à partir de l'élément code> code>, il devrait être: xxx pré>

puis utilisez la méthode DOM à partir de la langue d'hébergement pour obtenir la valeur de chaîne. P>

ou sélectionnez le noeud de texte (quelque chose que je ne recommande pas) avec: p> xxx pré>

ou s'il y aura seulement ce nœud unique, vous pourriez utiliser le String () Code> Fonction: P>

//tr[td/label/@for='PropertyA']/td[2]


0 commentaires

20
votes

Vous recherchez les axes après-frère code>. Il recherche dans les frères et sœurs du même parent - il est tr code>. Si le td code> n'est pas dans le même tr code> alors ils ne sont pas trouvés. Si vous le souhaitez, vous pouvez utiliser Axes après code>.

//td[label[@for='PropertyA']]/following-sibling::td[1]


1 commentaires

+1 pour utiliser suivi-frère au lieu de suivant . Le premier est une méthode plus robuste - moins susceptible d'aller mal, par ex. S'il n'y a pas de frère suivant :: TD Il ne choisira pas le mauvais TD.



0
votes

Obtenir tout élément suivant:

// td [étiquette [@ pour = 'Propertya']] / SIBLES :: *


0 commentaires