以文本方式查看主题

-  计算机科学论坛  (http://bbs.xml.org.cn/index.asp)
--  『 XML工具及XML开发环境 』  (http://bbs.xml.org.cn/list.asp?boardid=7)
----  小妹求助 xslt 中对变量赋值[求助]  (http://bbs.xml.org.cn/dispbbs.asp?boardid=7&rootid=&id=61436)


--  作者:belinda_pjm
--  发布时间:4/16/2008 11:52:00 AM

--  小妹求助 xslt 中对变量赋值[求助]
xml文件 a.xml
<?xml version="1.0" encoding="utf-8"?>
<employee name="人员设置">
  <emp name="个人信息">
    <姓名 id="1" >张三</姓名>
    <公司 id="1" >吉安名流</公司>
    <部门 id="1" >销售部</部门>
    <职位 id="1" >销售部经理</职位>
  </emp>
  <emp>
    <姓名 id="2">李四</姓名>
    <公司 id="1">吉安名流</公司>
    <部门 id="1">销售部</部门>
    <职位 id="2">销售助理</职位>
  </emp>
</employee>

a.xslt

<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0"
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:db="urn:test-sqlinsert">
  <xsl:output method ="html"/>
  <xsl:param name ="a"/>
  <xsl:param name ="b"/>
  <xsl:param name ="c"/>
  <xsl:param name ="d"/>
<xsl:template match="/">
    <html>
    <body>
      <xsl:apply-templates select ="*"/>
    </body>
    </html>
</xsl:template>
  <xsl:template match ="*">
    <xsl:variable name ="name" select ="local-name()"/>
    <xsl:if test="$name='employee'">
      <h2><xsl:value-of select="@name"/></h2>
      <br/>
    </xsl:if>
    <xsl:if test ="$name='emp'">
      <h4>
        <xsl:value-of select ="@name"/>
      </h4>
      <br/>
    </xsl:if>
    <xsl:choose >
      <xsl:when test ="$name='姓名'">
        <xsl:variable name ="a_id" select ="@id"/>
        <td><xsl:value-of select ="@id"/></td>
        <td><xsl:value-of select ="text()"/></td>
      </xsl:when>
      <xsl:when test ="$name='公司'">
      <xsl:variable name ="b_id" select ="@id"/>
        <td><xsl:value-of select ="text()"/></td>
      </xsl:when>
      <xsl:when test ="$name='部门'">
    <xsl:variable name ="c_id" select ="@id"/>
        <td>
          <xsl:value-of select ="text()"/>
        </td>
      </xsl:when>
      <xsl:when test ="$name='职位'">
        <xsl:variable name ="d_id" select ="@id"/>
        <td>
          <xsl:value-of select ="text()"/>
        </td>
      </xsl:when>
    </xsl:choose>
    <xsl:apply-templates select ="*"/>
  </xsl:template>
</xsl:stylesheet>

我想把局部变量 a_id,b_id,c_id,d_id的值赋给全局变量的 a,b,c,d

我想要得到最终是xml文件中 ID属性的值( 1,1,1,1 )     (2,1,1,2)


--  作者:belinda_pjm
--  发布时间:4/16/2008 3:33:00 PM

--  
有谁能帮帮我啊!
W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
46.875ms