2010-09-02 3 views
0
<field type="math" size="12" unitText="%" unitPos="back"/> 

Я могу выбрать «тип» и «12» из их соответствующих полей, но я не могу сделать то же самое для unitText и unitPos. Любые идеи почему?XSLT и XPATH: не удалось прочитать определенные атрибуты

Ниже я использую для печати тип и размер.

<xsl:value-of select="@size"/> 

Я вхожу в "поле" тег с этой линией

<xsl:template match="field" mode="all"> 

Спасибо за любую помощь. Некоторое время стучал головой о стену. : P

+0

Вы, вероятно, нужно, чтобы показать больше вашего XSLT. Шаблон/матч выглядит нормально, хотя он будет вызываться только в режиме «все». Значение '' правильно, и аналогичный код должен работать для @unitText и @unitPos. Таким образом, без дополнительного контекста XSLT будет сложно догадаться, что происходит не так. – LarsH

+1

Если у вас есть проблемы с чувствительностью к регистру, вы можете уточнить, какое именно программное обеспечение вы используете с преобразованием xslt. – Wrikken

+0

Мы используем Struts 1.1. Не уверен, что это информация, которую вы ищете.^_^ – bobber205

ответ

0

Я не могу воспроизвести проблему. Эта таблица стилей:

<xsl:stylesheet version="1.0" 
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> 
    <xsl:output method="text"/> 
    <xsl:template match="field"> 
     <xsl:apply-templates select="@*"/> 
    </xsl:template> 
    <xsl:template match="@*"> 
     <xsl:value-of select="concat(name(),': ',.,'&#xA;')"/> 
    </xsl:template> 
</xsl:stylesheet> 

С вводом:

<field type="math" size="12" unitText="%" unitPos="back"/> 

Выход:

type: math 
size: 12 
unitText: % 
unitPos: back 
+0

Оказывается, это не чувствительные к регистру сравнения. :( – bobber205

+0

@ bobber205: Да, это основной в XML, независимо от того, имеете ли вы дело с XPath, CSS или Emacscript – 2010-09-02 22:15:55

Смежные вопросы