使用XSL将xml值作为类添加到body标记中
我对xsl非常生疏,所以我会尽可能地问这个问题,但我要做的是获取XML文件属性(在本例中为“pharmacy”)的值,并将其作为类传递给xsl文件中的body标记。我最终使用了jQuery,它可以工作,但我所问的是使用xsl是否可行 我的jQuery解决方案:使用XSL将xml值作为类添加到body标记中,xml,xslt,Xml,Xslt,我对xsl非常生疏,所以我会尽可能地问这个问题,但我要做的是获取XML文件属性(在本例中为“pharmacy”)的值,并将其作为类传递给xsl文件中的body标记。我最终使用了jQuery,它可以工作,但我所问的是使用xsl是否可行 我的jQuery解决方案: <script> $(function() { var a = $('.cohort').text(); $('body').r
<script>
$(function() {
var a = $('.cohort').text();
$('body').removeClass('no-js').addClass('je-enabled ' + a)
});
</script>
$(函数(){
变量a=$('.court').text();
$('body').removeClass('no-js').addClass('je-enabled'+a)
});
我的XSL:
<xsl:template match = "/">
<html>
<body class="no-js">
<xsl:apply-templates />
</body>
</html>
</xsl:template>
<xsl:template match="COURSE">
<div class="cohort sr-only"><xsl:value-of select="@STUDY_AREA"/></div>
.
.
</xsl:template>
.
.
我的XML
<COURSES>
<COURSE id="1" STUDY_AREA="pharmacy">
.
.
</COURSE>
</COURSES>
.
.
如果我没有添加完整的代码,您的帮助将不胜感激,因为它太大了。希望我提供的足够了 据我所知,您希望:
- 阅读
标签中的课程
属性的内容, 位于学习区
root标记(类名)中COURSES
- 生成
标签,标签的body
属性与您需要的属性相同 刚刚阅读,使用class
xsl:attribute
<xsl:template match="/">
<html>
<body>
<xsl:attribute name="class" select="COURSES/COURSE/@STUDY_AREA"/>
<xsl:apply-templates/>
</body>
</html>
</xsl:template>
请注意:
- 此模板不会将任何类分配给
标记 以静态的方式主体
- 相反,它使用目标类名设置
属性class