<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="2.xsl"?>
<newdataset>
<student>
<id>1</id>
<oicq></oicq>
<name>sdf</name>
</student>
<student>
<id>2</id>
<oicq></oicq>
<name>sdf</name>
</student>
<student>
<id>3</id>
<oicq>21243468</oicq>
<name>sdf</name>
</student>
</newdataset>
请问上面这个xml文件中有的<oicq></oicq>为空值,有的不为空,所以我用xslt转换成html文件时判断,当它为不为空时显示出来否则不显示。请问我该怎么做?
我的这种做法为什么不对呢?
<xsl:if test="string-length(newdataset/student[position()]/oicq)>0">
<xsl:value-of select="oicq"/>
</xsl:if>
为什么我这种做法得出的全部显示,而不是我要的结果呢?
<?xml-stylesheet type="text/xsl" href="2.xsl"?>
<newdataset>
<student>
<id>1</id>
<oicq></oicq>
<name>sdf</name>
</student>
<student>
<id>2</id>
<oicq></oicq>
<name>sdf</name>
</student>
<student>
<id>3</id>
<oicq>21243468</oicq>
<name>sdf</name>
</student>
</newdataset>
请问上面这个xml文件中有的<oicq></oicq>为空值,有的不为空,所以我用xslt转换成html文件时判断,当它为不为空时显示出来否则不显示。请问我该怎么做?
我的这种做法为什么不对呢?
<xsl:if test="string-length(newdataset/student[position()]/oicq)>0">
<xsl:value-of select="oicq"/>
</xsl:if>
为什么我这种做法得出的全部显示,而不是我要的结果呢?
虽然可以判断该接点内是否为空但只能判断节点不能判断节点内
的内容是否为空。
除了这种做法<xsl:if test="oicq[.>0]">
用string-length又该怎么判断?
假如我要的是email也要有同样的效果。
<xsl:if test="string-length(oicq)>0">
<xsl:text>oicq:</xsl:text>
<xsl:value-of select="oicq"/>
</xsl:if>