Я использую XSLT Transformer в Java.Я уверен, что проблема в том, как я печатаю в синтаксисе XSLT.
По сути, я должен посмотреть, эквивалентен ли атрибут 'id' в одном из узлов XML значению,XSL должен обработать шаблон.Мне нужно передать это тестовое значение как xsl: param.Когда я тестирую его на статическом значении, оно работает круто:
<ul class="levelOneNav">
<xsl:for-each select="level1[@id='sub-page-1']">
<xsl:call-template name="level1"/>
</xsl:for-each>
<div class="clear"></div>
</ul>
Часть теста находится во второй строке выше.AFAIK, чтобы вставить параметр внутри строк, формат <xsl:for-each select="level1[@id='$ContentID']">
, в котором $ContentID
это xsl: param, объявленный как <xsl:param name="ContentID"/>
Так что это код, который я набираю
<ul class="levelOneNav">
<xsl:for-each select="level1[@id='$ContentID']">
<xsl:call-template name="level1"/>
</xsl:for-each>
<div class="clear"></div>
</ul>
но это не работает.Я также пытался использовать <xsl:for-each select="level1[@id='{$ContentID}']">
, и он также не работает.
Любой совет очень ценится.Пожалуйста, дайте мне ссылки, если вы чувствуете, что я должен чему-то научиться.Спасибо за ваше время ...