HTML xpath selecting preceding sibling of parent element
以下是我正在处理的应用程序的html:
1 2 3 4 5 6 | <td class="ui-selection-column" ng-reflect-ng-class="[object Object]" ng-reflect-ng-style="[object Object]" style="width: 38px; display: table-cell;"> <td ng-reflect-ng-class="[object Object]" style="display: table-cell;"> <span class="ui-column-title">NAME</span> <span class="ui-cell-data">Name1</span> </td> |
我能够编写xpath以选择text()= Name1的td元素内的跨度。
1 | //td[@style='display: table-cell;']/span[text()='Name1'] |
现在,如何在上下文中与较低的td元素一起选择上方的第一个td元素。 我在Xpath下方写了一个代码,以选择td元素的上一个兄弟,但无法正常工作。
1 | //td[@style='display: table-cell;']/span[text()='VendorContact_Name1']/preceding-sibling::td[@class='ui-selection-column'] |
我错过了什么吗? 有什么建议么?
这是根据您的第一个xpath:
1 | //td[@style='display: table-cell;']/span[text()='Name1']/../preceding-sibling::td[@class='ui-selection-column'][1] |
因为在您的xpath中,您选择的是
1 | //td[@style='display: table-cell;' and span[text()='Name1']]/preceding-sibling::td[@class='ui-selection-column'][1] |