Попытка отобразить содержимое xsl, но не может заставить внука отображаться - PullRequest
0 голосов
/ 08 марта 2019

Я успешно отобразил содержимое для двух столбцов, однако не могу отобразить содержимое в третьем столбце.

А именно, я хочу создать ссылку на pdf-файл под внуком документа.

Вот этот xml

        <objects>
        <img id="m" modTime="2019-03-07-03:30:19" url="http://qcoast.geosite.com.au/staging/packages/qcoast/GeoPackage882_AIRLIE173_335_.jpg" format="jpg"/>
        <img id="a" modTime="2019-03-07-03:30:19" url="http://qcoast.geosite.com.au/staging/packages/qcoast/GeoPackage_qcoast_882_siting.jpg" format="jpg"/>    
        <floorplan id="1" modTime="2019-03-07-03:30:19" url="http://qcoast.geosite.com.au/staging/packages/qcoast/GeoPackage_qcoast_882_fp1.jpg" format="jpg"/>
        <document id="3" modTime="2019-03-07-03:30:19" title="Brochure" url="http://qcoast.geosite.com.au/staging/packages/qcoast/GeoPackage_qcoast_882.pdf" format="pdf"/>                     

    </objects>

и xsl

    <xsl:for-each select="residential">
    <tr>
      <td><xsl:value-of select="headline"/></td>
      <td><xsl:value-of select="priceView"/></td>
      <td><xsl:value-of select="document"/></td>
    </tr>
</xsl:for-each>

Я проверил / root / residential / objects / document path с помощью https://www.freeformatter.com/xpath-tester.html, и он возвращает правильный результат для «документа», но все еще не может его отобразить.

Вот вывод, который я получаю. выход

1 Ответ

0 голосов
/ 08 марта 2019

Если путь к document равен /root/residential/objects/document, и вы находитесь в контексте residential, то вам нужно использовать:

<xsl:value-of select="objects/document"/>

, чтобы получить значение document.

Однако в опубликованном вами фрагменте элемент document не имеет значения. Вам нужно выбрать один из его атрибутов, чтобы получить значимый результат, например:

<xsl:value-of select="objects/document/@url"/>

Остальное зависит от того, может ли быть выбрано более одного document этим выражением, и используете ли вы XSLT 1.0 или 2.0.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...