我正在尝试打印这样的输出,这只是通过替换
生成的xsl:value-of select ="@new_bname"/> with A and other
xsl:value-of select ="@new_bname"/> with B.
但我得到这样的输出
我的HTML代码包括xslt
<xsl:for-each select="//bankinfo/items">
<div class="col-sm-12 pad0">
<xsl:if test="position() mod 2 != 0">
<div class="col-sm-6 pad0l sm-pad0r">
<button class="btn-block border-grey text-c pad5 radius-20 bg-grey outline-none ">
<a href="/ifsc-code-v1.aspx?page_mode=2&bank_url={@url_bank}" >
<xsl:value-of select ="@new_bname"/>
</a>
</button>
</div>
</xsl:if>
<xsl:if test="position() mod 2 = 0">
<div class="col-sm-6 pad0r sm-pad0l sm-marg5t">
<button class="btn-block border-grey text-c pad5 radius-20 bg-grey outline-none ">
<a href="/ifsc-code-v1.aspx?page_mode=2&bank_url={@url_bank}" >
<xsl:value-of select ="@new_bname"/>
</a>
</button>
</div>
</xsl:if>
</div>
<div class="clearfix"></div>
<div class="pad5t"></div>
</xsl:for-each>
我希望银行名称1在A处,银行名称2在B处。
同样一直持续到我XML
的最后一项。
修改
@new_bname
来自数据库,通过控制器,然后通过XSLT
呈现给HTML
。
我正在使用<xsl:for-each>
对XML
中的所有项进行迭代,并将其放在HTML
上。
但是我想像第1号图片一样并排第一和第二银行名称。
我希望第一个div中的第一个@new_bname
和下一个div中的下一个@new_bname
。但是像这样,我在两个不同的列中生成相同的bankNames
编辑2 通过硬编码bankname值来预期输出1
XML结构
<items url_bank="a-c-b-ld" new_bname="ICICI"/>
<items url_bank="a-d-c-bank" new_bname="HDFC"/>
<items url_bank="a-m-c-b" new_bname="Bank OF AMERICA"/>
答案 0 :(得分:1)
我不完全确定您的预期输出应该是什么,但是这个简化的XSLT可能会让您在起点上获得所需的结构......
<xsl:template match="/">
<xsl:for-each select="//bankinfo/items[position() mod 2 != 0]">
<div class="col-sm-12 pad0">
<div class="col-sm-6 pad0l sm-pad0r">
<xsl:apply-templates select="self::*" />
</div>
<div class="col-sm-6 pad0r sm-pad0l sm-marg5t">
<xsl:apply-templates select="following-sibling::items[1]" />
</div>
</div>
</xsl:for-each>
</xsl:template>
<xsl:template match="items">
<xsl:value-of select ="@new_bname"/>
</xsl:template>
我在这里使用了一个模板,以避免重复代码。
答案 1 :(得分:0)
<b><xsl:value-of select="./following-sibling::items[1]/@url_bank"/></b>
<b><xsl:value-of select="./following-sibling::items[2]/@url_bank"/></b>
使用上面的代码我得到了所需的属性
使用此功能,我可以在3个div中获得所需的输出。
更改&#39; position() mod
&#39;根据您的需要增加号码<xsl:apply-templates select="following-sibling::items[<!--1,2,3,4(any number)-->]" />