如何在xslt中将xml转换为html输出时,如何提取元素的partail值并以粗体/斜体/列表显示它们

时间:2012-03-12 06:07:12

标签: html xml xslt xslt-grouping

我正在进行XML转换。我必须对元素进行exctrat velue并以粗体/斜体/列表显示它们。 来源:

 <content>
    <bodyParagraphText>
ABCD<strong   xmlns="http://www.w3.org/1999/xhtml">:<dynamicVariable  name='BOLD'></dynamicVariable></strong>
 </bodyParagraphText>  
 </content>

1.需要输出1(粗体):

<aaa>
     ABCD **BOLD**
</aaa>

2.Output required1(list):

<aaa>
     ABCD 

 - BOLD

</aaa>

3.需要输出1(下划线):

  <aaa>
     ABCD BOLD(underlined)
  </aaa>

我对它完全陌生。我没有任何想法可以继续。 请帮忙。 提前谢谢。

1 个答案:

答案 0 :(得分:0)

有点猜测你需要做什么,但是:

  • xsl:stylesheet元素上,声明xhtml的命名空间前缀,例如"xhtml"

  • 创建与"content/bodyParagraphText"匹配的模板。

  • 显然,使用XPath表达式"text()[1]"来获取“ABCD”文本。将其放在变量中,例如abcd

  • 使用XPath表达式".//xhtml:dynamicVariable/@name"获取“BOLD”。将其放在变量中,例如dv

  • 要指定输出,请使用

  • 之类的内容

<aaa>
  <xsl:value-of select="$abcd" /> **<xsl:value-of select="$dv" />**
</aaa>

表示所需的第一个输出格式。

如果我误解了你的问题,请澄清......