XSLT Как получить доступ к значению соответствующего узла в шаблоне - PullRequest
0 голосов
/ 26 августа 2011

Я хочу иметь возможность доступа к 'значению' узла, с которым я сопоставляюсь, в моем шаблоне.

 <factfind>
   <myelement>This is a value I want to retreive</myelement>
   ....
   ....
 </factfind>

По сути, я хочу использовать следующий шаблон (что-то вроде этого)

 <xsl:template name="get-my-element" match="myelement">
   <!-- somehow retreive the value 'This is a value I want to retrieve' -->
   <xsl:value-of select="$this"/>
 </xsl:template>

Я знаю, что могу сопоставить шаблон с <factfind>, но проблема в том, что у меня уже есть шаблон, который соответствует этому элементу и обрабатывает его по-своему.Если я сделаю два шаблона, которые обрабатывают один узел, будет назван только первый.

Таким образом, вы можете узнать контекст немного лучше, вот как я настроил его atm.

 <xsl:template match="loggedin">
   <div id="entities">
      <xsl:apply-templates select="entities"/>
    </div>

    <div id="nav">
      <xsl:apply-templates select="menuitem"/>
    </div>

    <div id="content">
      <xsl:apply-templates select="factfind" />
    </div>
 </xsl:template>

Шаблон menuitem хотел бы создать шаблон вызова для шаблона get-my-element для доступа к информации внутри него, не влияя на поведение моего шаблона factfind.

1 Ответ

2 голосов
/ 26 августа 2011

Простой, выражение точки дает вам элемент контекста:

<xsl:value-of select="."/>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...