Найти родителя элемента в HTML дереве DOM - PullRequest
0 голосов
/ 24 марта 2020

Я пытаюсь найти родительский элемент элемента span с меткой Имя и go вверх по DOM, пока не доберусь до элемента input с классом " 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

HTML DOM

Любая помощь будет оценена. Спасибо!

1 Ответ

1 голос
/ 24 марта 2020

Вы можете попробовать с приведенным ниже xpath.

//span[normalize-space(.)='First Name']/ancestor::div[@class='input-v3']//input[@class='mat-input-element']

Образец HTML: Из jsfiddle

<html><head></head><body>
    <div class="add-users">
    <lib-text-input-v3 errortext="”Error" a="" valid="" first="" name”="">
        <div class="input-v3">
       <mat-form-field class="mat-form-field">
          <div class="mat-form-field-wrapper">
             <div class="mat-form-field-flex">
                <div class="mat-form-field-infix">
      		    <input class="mat-input-element" type="text">
                   <span class="mat-form-field-label-wrapper">
                   </span>
                </div>
             </div>
             <div class="mat-form-field-underline>
                <span class=" mat-form-field-ripple"="">
                
             </div>
             <div class="mat-form-field-subscript-wrapper">
                <div class="mat-form-field-hint-wrapper">
                   <div class="mat-form-field-hint-spacer">
                   </div>
                </div>
             </div>
          </div>. //closes mat-form-field-wrapper class
       </mat-form-field>
    <div class="input-v3__label"> // same level as input-v3 class
       <div class="input-v3__label--text">
          <span class="ng-tns-c11-01">First Name
          </span>&nbsp; 
       </div>
   </div>
  </div> // closes input-v3 class
</lib-text-input-v3>
<lib-text-input-v3>…..
</lib-text-input-v3></div></body></html>

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...