2012-11-28 83 views
6

Tôi đang cố gắng sử dụng giá trị của thông số hoặc biến làm tên nút bên trong giá trị được chọn nhưng cho đến nay không thành công ..Làm cách nào để sử dụng thông số hoặc giá trị biến làm tên nút?

Vì vậy, XML của tôi như sau.

<Data> 
<Name>John Smith</Name> 
<Date>28112012</Date> 
<Phone>iphone</Phone> 
<Car>BMW</Car> 
</Data> 

Và xslt chưa hoàn chỉnh của tôi trông giống như bên dưới.

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
    version="2.0" 
    exclude-result-prefixes="#all"> 

<xsl:param name="nodename" select="'Name'"/> 

<xsl:template match="/Data"> 

     <Output> 
     <xsl:value-of select="{$nodename}"/> 
     </Output>  
</xsl:template> 

</xsl:stylesheet> 

Lý tưởng nhất là tôi muốn đặt ra là

<Output>John Smith</Output> 

Có cách nào tôi có thể làm điều này bằng XSLT? Tôi muốn có thể chọn nút thích hợp dựa trên lựa chọn của người dùng.

Cảm ơn

SK

Trả lời

4

Một đoán hoang dã, cho tôi biết nếu nó hoạt động:

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0" exclude-result-prefixes="#all"> 

<xsl:param name="nodename" select="'Name'"/> 
<xsl:template match="/Data"> 
    <Output> 
     <xsl:value-of select="//*[name()=$nodename]" /> 
    </Output>  
</xsl:template> 

</xsl:stylesheet> 
+0

ngươi cảm ơn, tôi chỉ figured it out bản thân mình cũng! – user1859463

+0

@ user1859463 Tôi đoán nó hoạt động. XD – xiaoyi

Các vấn đề liên quan