我需要改變通過XSL文件下面一個XML節點的特定元素的值來修改xml文件是我的XML數據如何使用XSLT
<hospitals>
<hospital>
<department>
<clinic>
<cid>8</cid>
<clinicName>clinic8</clinicName>
<status>1</status>
</clinic>
<clinic>
<cid>9</cid>
<clinicName>clinic9</clinicName>
<status>0</status>
</clinic>
<depId>3</depId>
<departmentName>dental</departmentName>
</department>
<hospId>2</hospId>
<hospitalName>appolo</hospitalName>
</hospital>
<hospital>
<department>
<clinic>
<cid>82</cid>
<clinicName>clinic82</clinicName>
<status>0</status>
</clinic>
<clinic>
<cid>92</cid>
<clinicName>clinic92</clinicName>
<status>0</status>
</clinic>
<depId>4</depId>
<departmentName>mental</departmentName>
</department>
<hospId>2</hospId>
<hospitalName>manipal</hospitalName>
</hospital>
</hospitals>
例如,我需要根據選擇clinic9其ID IE 9,改變狀態0到1
我試過這樣
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:param name="hospId"/>
<xsl:param name="depId" />
<xsl:param name="clinicId"/>
<xsl:output omit-xml-declaration="yes" indent="yes"/>
<xsl:strip-space elements="*"/>
<xsl:template match="node()|@*">
<xsl:copy>
<xsl:apply-templates select="node()|@*"/>
</xsl:copy>
</xsl:template>
<xsl:template match="hospitals/hospital[hospId='2']/department[depId='3']/clinic[cid='9']">
<xsl:choose>
<xsl:when test="cid ='9'">
<xsl:element name="status">123</xsl:element>
</xsl:when>
</xsl:choose>
</xsl:template>
</xsl:stylesheet>
但價值並沒有改變......
XML數據沒有得到更換下一 – subbusaabu 2012-08-02 09:17:55
做我想做的,我需要令狀在XML文件中的一些代碼,以刷新或HTML任何額外的代碼需要 – subbusaabu 2012-08-02 09:38:38
一兩件事,如果狀態值爲「 0',那麼我們需要設置狀態值爲'1',反之亦然 – subbusaabu 2012-08-02 10:18:56