2009-09-25 2 views
9

См. xslt to operate on element value before displaying? для исходного XML и XSL. Я получил ответ на свой вопрос.XSL: Как назначить значение элемента XML переменной (минимальное изменение на странице ниже)?

Мой другой вопрос по адресу this same XML/XSL: если я хотел бы зафиксировать значение элемента (например, элемента title) в локальной переменной XSL и затем оперировать им, как я могу захватить это значение и присвоить его переменной? У меня такое ощущение, что это имеет какое-то отношение к XSL «param», но я не уверен.

Итак, на that same code, что такое минимальный переход на XSL, чтобы у меня было значение заголовка в переменной?

ответ

12

Вы используете инструкцию xsl: variable для создания переменной. Любое из следующего будет работать:

<xsl:variable name="cdtitle"><xsl:value-of select="title"/></xsl:variable> 
<xsl:variable name="cdtitle" select="title"/> 

В этом случае утверждение должно быть в пределах цикла.

Чтобы использовать переменную, вы можете просто сделать это, считая переменную в области видимости.

<xsl:value-of select="$cdtitle"/> 

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

+0

Спасибо. Просто я изучаю все распространенные синтаксисы, нет ли там синтаксиса, где я сначала объявляю переменную, а затем устанавливаю ее значение? С вашим комментарием к этому, я, скорее всего, отмечу это как принятый ответ. В любом случае я искал ваше примечание «xsl: переменные не являются переменными» и понимаю, что мне нужно будет прочитать, например, «http://xml.apache.org/xalan-j/xsltc/xsl_variable_design.html », чтобы понять все о переменных xsl и параметрах. – talkaboutquality

+0

www.w3schools.com - еще одно хорошее место для изучения XSLT. Например, см. Http://www.w3schools.com/xsl/xsl_w3celementref.asp для списка элементов XSLT. –

+0

Теперь я пробовал оба варианта, и они работают. Спасибо за ответ и дополнительную ссылку xsl. Кажется, я уже здесь! – talkaboutquality