Подтвердить что ты не робот

Как конкат строки для xsl: значение-select = "...?

<a>
    <xsl:attribute name="href"> 
     <xsl:value-of select="/*/properties/property[@name='report']/@value" />
    </xsl:attribute>
</a>    

Есть ли способ переместить другую строку в

<xsl:value-of select="/*/properties/property[@name='report']/@value"  />

Мне нужно передать некоторый текст в атрибут href в дополнение к значению свойства отчета

4b9b3361

Ответ 1

Вы можете использовать довольно разумно названную функцию xpath, называемую concat здесь

<a>
   <xsl:attribute name="href">
      <xsl:value-of select="concat('myText:', /*/properties/property[@name='report']/@value)" />
   </xsl:attribute>
</a>  

Конечно, здесь нет текста, это может быть другое выражение xpath для выбора элемента или атрибута. И вы можете иметь любое количество аргументов в выражении concat.

Заметьте, вы можете использовать Шаблоны значений атрибутов (представленные фигурными фигурными скобками) здесь, чтобы упростить ваше выражение

<a href="{concat('myText:', /*/properties/property[@name='report']/@value)}"></a>

Ответ 2

Три ответа:

Простой:

<img>
    <xsl:attribute name="src">
        <xsl:value-of select="//your/xquery/path"/>
        <xsl:value-of select="'vmLogo.gif'"/>
    </xsl:attribute>
</img>

Использование 'concat':

<img>
    <xsl:attribute name="src">
        <xsl:value-of select="concat(//your/xquery/path,'vmLogo.gif')"/>                    
    </xsl:attribute>
</img>

Ярлык атрибута, предложенный @TimC

<img src="{concat(//your/xquery/path,'vmLogo.gif')}" />

Ответ 3

Использование

<a href="wantedText{/*/properties/property[@name='report']/@value)}"></a>

Ответ 4

Самый простой способ конкретизировать статическую текстовую строку для выбранного значения - использовать элемент .

<a>
  <xsl:attribute name="href"> 
    <xsl:value-of select="/*/properties/property[@name='report']/@value" />
    <xsl:text>staticIconExample.png</xsl:text>
  </xsl:attribute>
</a>

Ответ 5

Объединить несколько строк и добавить новый

<xsl:value-of select="concat(//PersonalDetails/@Title,' ',//PersonalDetails/@Surname,',')"/>

Ответ 6

Самый простой способ -

  <TD>
    <xsl:value-of select="concat(//author/first-name,' ',//author/last-name)"/>
  </TD>

когда структура XML

<title>The Confidence Man</title>
<author>
  <first-name>Herman</first-name>
  <last-name>Melville</last-name>
</author>
<price>11.99</price>