我的代码生成以下XML:
<person_app>
<person_data>
<person>
...person details here...
</person>
</person_data>
</person_app>
Run Code Online (Sandbox Code Playgroud)
使用XSLT,我解析人员记录如下:
<xsl:template match="/person_app/person_data">
<xsl:for-each select="person">
...generate person HTML...
</xsl:for-each>
</xsl:template>
Run Code Online (Sandbox Code Playgroud)
但是,如果我收到零人,我想显示"找不到记录"(或类似的东西).当应用程序返回零记录时,XML类似于以下内容:
<person_app/>
Run Code Online (Sandbox Code Playgroud)
简而言之,当我使用<xsl:for-each />来解析我的Person记录时,如何测试空结果集?我试过以下但没有成功:
<xsl:if test="not(person)">
<div style="font-size:18pt"><xsl:text>No records found</xsl:text></div>
</xsl:if>
Run Code Online (Sandbox Code Playgroud)
像这样的东西:
<xsl:choose>
<xsl:when test="person">
<xsl:for-each select="person">
...generate person HTML...
</xsl:for-each>
</xsl:when>
<xsl:otherwise>
<div style="font-size:18pt"><xsl:text>No records found</xsl:text></div>
</xsl:otherwise>
</xsl:choose>
Run Code Online (Sandbox Code Playgroud)