0

このxmlにはxml.inがあります。以下のようなビデオという名前のノードがあります

  <product>
 <id>676872</id>
  <weightingram>510</weightingram>
  <volume>0</volume>
  <discountgroup />
 <name>Product name (500 g)</name>
  <vat>10,49</vat>
  <webbestprice extra="webbestprice">0</webbestprice>
  <webreturn extra="webreturn">0</webreturn>
  <weboutdate extra="weboutdate">01-01-2013 00:00:00</weboutdate>
  <webaltitem extra="webaltitem" />
  <filters extra="filters">
    <ISP_WebItem FILTER="Type" FILTERNAME="type" UNITCODE=""/>
    <ISP_WebItem FILTER="Type2" FILTERNAME="500" UNITCODE="g"/>
  </filters>
  <videos extra="videos">
    <YoutubeVideoURL RowNumber="33" ProductID="676872" YoutubeUrl="http://www.youtube.com/watch?v=EjoEIHVk9qM" YoutubeImage="https://img.youtube.com/vi/EjoEIHVk9qM/2.jpg"/>
  </videos>
</product>

上記のxmlは使用して取得しています

<textarea>
<xsl:copy-of select="."/>
</textarea>

このxmlから属性YoutubeUrlの値を取得する必要があります。次のようなものを試しました

 <xsl:value-of select="./videos/YoutubeVideoURL[@YoutubeUrl] "/>

しかし、それは機能していません.助けてくれてありがとう.

4

3 に答える 3

1

このように書くことができます

サンプル XML ファイル

<?xml version="1.0" encoding="UTF-8"?>
<videos extra="videos">
    <YoutubeVideoURL RowNumber="1" ProductID="12452" YoutubeUrl="http://www.youtube.com/watch?v=efhrtgdbo" YoutubeImage="https://img.youtube.com/vi/efhrtgdbo/2.jpg"/>
</videos>

サンプルの XSL ファイル

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:output method="xml"/>
    <xsl:template match="YoutubeVideoURL">
        <xsl:value-of select="@YoutubeUrl"/>
    </xsl:template>
</xsl:stylesheet>

最終出力

http://www.youtube.com/watch?v=efhrtgdbo

それでおしまい

于 2013-10-04T05:39:53.320 に答える