我有2个xml文件,我想在一个xsl转换中从两个文件中读取数据。我尝试使用document()函数从第二个文件中读取数据,但它不返回任何值。
XSL模板
<xsl:template name="BuildingList" match="building">
<xsl:variable name="allBuildings" select="document('buildings.xml')/buildings"/>
<xsl:value-of select="$allBuildings" />
</xsl:template>
Buildings.xml结构
<?xml version="1.0" encoding="windows-1251"?>
<buildings>
<building id="First">
<title>Some title</title>
</building>
</buildings>
如何获取内容以便操作它?
编辑: 这三个文件都在同一目录中。我尝试使用以下两个jQuery插件处理转换:
对于其中任何一个,多个文件的转换都不起作用。
使用羽毛:
function LoadContent(pageName)
{
var currentPage = pageName+ '.xsl';
$.transform({el:"#information",xml:"pages.xml",xsl:currentPage});
/*$('#information').xsltParser({
xml: 'pages.xml',
xslt: currentPage,
onStart: function() {
//$('#log').append('Preparing... ');
},
onSend: function(url) {
//$('#log').append('Requesting ' + url + '... ');
},
onComplete: function() {
//$('#log').append('Done!');
}
});*/
}
答案 0 :(得分:0)
两个文件在哪里相对于彼此以及与样式表有关? select="document('buildings.xml', /)/buildings"
会给出更好的结果吗?如果样式表与主输入文档位于不同的位置,则可以。
答案 1 :(得分:0)
我发现客户端转换不支持document()
here