2015-05-22 8 views
0

У меня немного странная ситуация. Мне, вероятно, придется написать какой-то пользовательский код, но я подумал, что я разместил его здесь, если бы у него было какое-то решение, или если у кого-то есть аналогичная проблема.Поиск предков с использованием абсолютного пути

Мне нужно найти ближайшего предка элемента с использованием абсолютных путей.

Из-за некоторых ограничений в среде, в которой я работаю, я не могу использовать относительные пути. Таким образом, предок, предшествующий, родительский и т. Д. Недоступны в этом случае.

Ex.

<root> 
    <section> 
    <chapter> 
     <p id="1"/> 
    </chapter> 
    </section> 
    <section> 
    <chapter> 
     <p id="2"/> 
    </chapter> 
    </section> 
    <section> 
    <chapter> 
     <p id="3"/> 
    </chapter> 
    </section> 
</root> 

Скажите, что я нахожусь в p id = "2". Я хочу найти ближайшего предка. Это, как правило, осуществляется с

предка :: раздела или даже предком [1] :: раздел

Однако я должен использовать абсолютный путь. У меня нет идентификаторов или других уникальных идентификаторов, из которых я могу извлечь.

Я попытался с помощью XPaths как

// раздел [что-то здесь]

, но я не уверен, что я могу поставить в предикате динамически найти текущий раздел элемент.

Возможно ли найти ближайшего предка, используя абсолютные пути?

Это XPath 1.

ответ

0

ли вы имеете в виду

//section[chapter/p/@id="2"] 

т.е.. найдите раздел, который содержит раздел, который содержит p, чей идентификационный атрибут равен 2.

+0

Нет, у меня нет идентификаторов, из которых можно извлечь. Идентификатор в образце был, например, саке. – Jeff

+0

Тогда вам не повезло. Можете ли вы сохранить раздел в переменной в коде, который реализует весь материал? – choroba

 Смежные вопросы

  • Нет связанных вопросов^_^