<tableLayout>
<tableColumn width="250"/>
<tableDivider spaceAfter="0" spaceBefore="0"/>
<tableColumn/>
<tableDivider spaceAfter="0" spaceBefore="0"/>
<tableColumn/>
</tableLayout>
При выборе ширины для текущего "столбца" с использованием приведенных выше данных (не мое решение структурировать это так) я сталкиваюсь с некоторыми проблемами.
<xsl:attribute name="style">
<xsl:text>width: </xsl:text>
<xsl:value-of select="../../tableLayout/tableColumn[position()]/@width" />
<xsl:text>px;</xsl:text>
</xsl:attribute>
Вот так я получаю доступ к "текущей ширине" для столбцов, которые я строю. Довольно простой на мой взгляд. Если я поставлю [1] вместо вызова позиции, он возвращает 250 для каждого столбца. Если я поставлю [2] или [3], то ничего не вернется. [4] вызывает ошибку, как и должно быть.
Если я печатаю позицию (), я вижу 1, 2 и 3.
Но когда он получает доступ к данным этим методом, я получаю 250 каждый раз. Это что-то не так в том, что я делаю, или проблема с XSL?