基本上我一直试图获得一个如下所示的菜单:http://i.stack.imgur.com/w775Z.png (编辑 - 对于代码中的语言感到抱歉,我可以根据需要将所有内容翻译成英语)
但是我使用的代码只显示了2条绿线http://i.stack.imgur.com/fs1Hc.png,省去了你可以订购的“菜肴”(在蓝绿色系列中)。如果我取下第一个foreach,它会正确地放出碗碟(没有绿线信息)。
我的XML代码:
<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="meniu.xsl" ?>
<meniu>
<laikas>
<kas>PUSRYČIAI</kas>
<patiekalas>
<pavadinimas>SUMUŠTINIAI SU SŪDYTA LAŠIŠA</pavadinimas>
<kaina>12 Lt</kaina>
<aprasymas>skrudinta balta duona, žalias padažas, alyvuogės, lašiša, citrina</aprasymas>
<kalorijos>650</kalorijos>
</patiekalas>
<patiekalas>
<pavadinimas>KAIMIŠKA KIAUŠINIENĖ</pavadinimas>
<kaina>11 Lt</kaina>
<aprasymas>kepti kiaušiniai, rūkyta šoninė, šviežios daržovės, skrudinta duona</aprasymas>
<kalorijos>880</kalorijos>
</patiekalas>
</laikas>
<laikas>
<kas>PIETŪS</kas>
<patiekalas>
<pavadinimas>SUMUŠTINIAI SU SŪDYTA LAŠIŠA</pavadinimas>
<kaina>12 Lt</kaina>
<aprasymas>skrudinta balta duona, žalias padažas, alyvuogės, lašiša, citrina</aprasymas>
<kalorijos>650</kalorijos>
</patiekalas>
</laikas>
</meniu>
我的XSL代码:
<?xml version="1.0" encoding="UTF-8" ?>
<html xsl:version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns="http://www.w3.org/1999/xhtml">
<body style="font-family:Arial,helvetica,sans-serif;font-size:12pt; background- color:#EEEEEE">
<xsl:for-each select="meniu/laikas">
<div style="background-color:green;color:black;padding:4px">
<span style="font-weight:bold;color:white"><xsl:value-of select="kas" /></span>
</div>
<xsl:for-each select="meniu/laikas/patiekalas">
<div style="background-color:teal;color:white;padding:4px">
<span style="font-weight:bold;color:white"><xsl:value-of select="pavadinimas" /></span>
<span style="margin-left:10px;font-size:10pt"><xsl:value-of select="kaina" /></span>
</div>
<div style="margin-left:20px;margin-bottom:1em;font-size:10pt"><xsl:value-of
select="aprasymas" />
<span style="font-style:italic">(<xsl:value-of select="kalorijos" /> kalorijų)
</span>
</div>
</xsl:for-each>
</xsl:for-each>
</body>
</html>
答案 0 :(得分:0)
尝试将第二个<for-each />
的XPath-Selector更改为./patiekalas
:
<xsl:for-each select="patiekalas">
这是因为在第一个<for-each />
内部 - 上下文节点是相应的meniu/laikas
。