0

我对 xslt 有疑问。我想在 XSLT 中创建对 google 图表 api 的调用,它应该如下所示:

<img src="http://chart.apis.google.com/chart?chs=250x100&amp;chd=t:15.38,30.77,53.85&
amp;cht=p&amp;chl=FALSCH|DISS|RICHTIG&amp;chco=FF0000,A4A4A4,40FF00" border="0" 
alt="Beispiel"/>

我为此使用以下代码:

<xsl:variable name="source" select="concat(
'http://chart.apis.google.com/chart?chs=250x100&amp;chd=t:', $fehlerhaft , ','
,$disabled , ',' , $richtig , '&amp;cht=p&amp;chl=FALSCH|DISS|RICHTIG&
amp;chco=FF0000,A4A4A4,40FF00')" />

当我使用在这一点上它返回

http://chart.apis.google.com/chart?chs=250x100&chd=t:15.38,30.77,53.85&cht=p&chl=FALSCH|DISS|RICHTIG&chco=FF0000,A4A4A4,40FF00

这是正确的选择,接受 & 符号。

<img src="&lt;xsl:value-of select='$source'/&gt;" border="0" alt="Beispiel"/></p>

当我打最后一个电话时,没有提供图片。我认为问题在于&&之间的转换。他们有可能避免这种转变还是有另一个错误?

4

1 回答 1

0

<xsl:value-of>指令不能嵌入到属性中,因为指令的尖括号不能被转义,并且属性不允许有未转义的左尖括号。

使用带有嵌入式 XPath 表达式的属性值模板(大括号)来获得<xsl:value-of>文字结果元素中的等价物:

<img src="{$source}" border="0" alt="Beispiel"/>

于 2013-09-05T14:08:22.833 回答