在 HTML DOM 树中查找元素的父元素

我试图找到带有标签First Name的 span 元素的父级,并向上查找 DOM,直到到达类为“ mat-input-element ”的输入元素我尝试使用以下 xpath,但没有得到结果我需要:

   //div/div/span[contains(.,'First Name')]/parent::div[@class='add-users']/lib-text-input-v3/div/mat-form-field/div/div/div[1]/input

https://img4.mukewang.com/651d13cd0001415b05990561.jpg


Smart猫小萌
浏览 73回答 1
1回答

萧十郎

您可以尝试使用下面的 xpath。//span[normalize-space(.)='First Name']/ancestor::div[@class='input-v3']//input[@class='mat-input-element']示例 HTML:来自 jsfiddle<html><head></head><body>&nbsp; &nbsp; <div class="add-users">&nbsp; &nbsp; <lib-text-input-v3 errortext="”Error" a="" valid="" first="" name”="">&nbsp; &nbsp; &nbsp; &nbsp; <div class="input-v3">&nbsp; &nbsp; &nbsp; &nbsp;<mat-form-field class="mat-form-field">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <div class="mat-form-field-wrapper">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<div class="mat-form-field-flex">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <div class="mat-form-field-infix">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <input class="mat-input-element" type="text">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span class="mat-form-field-label-wrapper">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;</span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;</div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<div class="mat-form-field-underline>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class=" mat-form-field-ripple"="">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;</div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<div class="mat-form-field-subscript-wrapper">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <div class="mat-form-field-hint-wrapper">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<div class="mat-form-field-hint-spacer">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;</div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;</div>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </div>. //closes mat-form-field-wrapper class&nbsp; &nbsp; &nbsp; &nbsp;</mat-form-field>&nbsp; &nbsp; <div class="input-v3__label"> // same level as input-v3 class&nbsp; &nbsp; &nbsp; &nbsp;<div class="input-v3__label--text">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="ng-tns-c11-01">First Name&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; </span>&nbsp;&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;</div>&nbsp; &nbsp;</div>&nbsp; </div> // closes input-v3 class</lib-text-input-v3><lib-text-input-v3>…..</lib-text-input-v3></div></body></html>
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Html5