2016-03-30 4 views
2

Что я хотел бы сделать, это найти все родительские элементы, содержащие определенный дочерний элемент.Найдите родительский элемент, который содержит определенный дочерний элемент

<tr> 
<i class="myClass"> </i> 
</tr> 

Так что в этом случае я хотел бы найти все tr тегов, которые содержат тег i с этим конкретным классом.

Есть ли способ сделать это?

ответ

2

Другие ответы до сих пор сложнее, чем необходимо. Этот простой XPath подберет tr элементов с ребенком i элементов с class атрибутом равны myClass:

//tr[i/@class='myClass'] 

Если i был просто примером, а на самом деле цель состоит в том, чтобы выбрать tr элементов с любым дочерним элементом с заданное значение атрибута @class, тогда это будет работать:

//tr[*/@class='myClass'] 
2

Вы можете использовать родительские оси в XPath

//i[class="myClass"]/parent::tr 

выше один выбирает родительские элементы, имеющие метку тр. Для выбора всех родителей

//i[class="myClass"]/parent::* 

пожалуйста найти XPath осей here

Спасибо, Murali

2

Вот способ с использованием XPath.

//*[@class='myClass']/parent::tr 
Смежные вопросы