Получение полного текста с детьми / внуками в XPath / XSL - PullRequest
2 голосов
/ 14 марта 2012

Я использую таблицу стилей XSL 1.0, и у меня есть узел, подобный следующему:

<p>Hello, <b>John</b>, how are you?</p>

В настоящее время я нахожусь в шаблоне xsl:, сопоставленном с узлом <p>.Я хочу создать переменную xsl:, которая заканчивается строковым значением «Привет, Джон, как дела?».

Функция text() завершается сбоем, так как возвращает только «Привет, как дела?вы?».

Ответы [ 3 ]

3 голосов
/ 15 марта 2012

Вероятнее всего будет эффективнее просто взять строковое значение текущего узла

 <xsl:variable name="x">
    <xsl:value-of select="."/>
 <xsl:variable>
2 голосов
/ 15 марта 2012

Я сейчас нахожусь в шаблоне xsl: совпал с узлом <p>. я хочу создать переменную xsl:, которая заканчивается строковым значением "Hello, Джон, как ты? ".

Просто используйте :

<xsl:variable name="vSomeName" select="string(.)"/>
1 голос
/ 14 марта 2012

Дух, я решил это.:)

descendant-or-self::text()
...