1
我一直有問題找到一種方法來計算一個字段不存在於其中一個學生的總數。當我對充電器進行總結時,我總是得到NaN。如果其中一項收費只存在於一名學生中,我該如何對收費人員進行總結。只有學生2有活動充電器,但第一個沒有。在XSLT中計算可能缺失的元素的總數?
<?xml version="1.0" encoding="utf-8" ?>
<?xml-stylesheet type="text/xsl" href="students.xslt"?>
<students>
<student id="0" type="grad">
<lastname>Jones</lastname>
<firstname>Alan</firstname>
<gpa>3.51</gpa>
<chargers>
<tuition>1200</tuition>
<parking>35.20</parking>
<health>18.20</health>
</chargers>
</student>
<student id="001887" type="undergrad">
<lastname>Chong</lastname>
<firstname>Susan</firstname>
<gpa>2.51</gpa>
<chargers>
<tuition>1645</tuition>
<activity>50.20</activity>
<parking>35.20</parking>
<health>22.50</health>
</chargers>
</student>
</students>
這就是我要如何計算總數。 <xsl:value-of select="sum(//chargers) "/>
什麼是最好的方法?
請問xsl:if
測試會需要嗎?
<xsl:template match="chargers">
<table>
<tr>
<b>Chargers:</b>
</tr>
<tr>
<td>Tuition:</td>
<td>
<xsl:value-of select="tuition"/>
</td>
</tr>
<xsl:if test="self::node()[activity]">
<tr>
<td>Activity:</td>
<td>
<xsl:value-of select="activity"/>
</td>
</tr>
</xsl:if>
<tr>
<td>Parking:</td>
<td>
<xsl:value-of select="parking"/>
</td>
</tr>
<tr>
<td>health:</td>
<td>
<xsl:value-of select="health"/>
</td>
</tr>
<tr>
<td colspan="2">Total Chargers:</td>
<td>
<xsl:value-of select="sum(//chargers) "/>
</td>
</tr>
</table>
</xsl:template>