powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Вставка закрывающего тега
4 сообщений из 4, страница 1 из 1
Вставка закрывающего тега
    #36584787
sherzod_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здравствуйте.

Есть xml файл примерно такой структуры:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
<data>
	<group name="hello1">
		<row>
			<field no="2" name="param1"> 2354 </field>
			<field no="3" name="param2"> 3465 </field>
			<field no="4" name="param3"> 4534 </field>
		</row>
		<row>
			<field no="2" name="param1"> 2354 </field>
			<field no="3" name="param2"> 3465 </field>
			<field no="4" name="param3"> 4534 </field>
		</row>
		<row>
			<field no="2" name="param1"> 2354 </field>
			<field no="3" name="param2"> 3465 </field>
			<field no="4" name="param3"> 4534 </field>
		</row>
	</group>
	<group name="hello2">
		<row>
			<field no="2" name="param1"> 7844 </field>
			<field no="3" name="param2"> 2345 </field>
			<field no="4" name="param3"> 5555 </field>
		</row>
		<row>
			<field no="2" name="param1"> 1232 </field>
			<field no="3" name="param2"> 4523 </field>
			<field no="4" name="param3"> 1111 </field>
		</row>
		<row>
			<field no="2" name="param1"> 4563 </field>
			<field no="3" name="param2"> 2345 </field>
			<field no="4" name="param3"> 4744 </field>
		</row>
	</group>
</data>

для каждого group формирую мини таблицу с заголовком group::@name и тремя рядами соотвественно с полями param1, param2, param3. Таких таблиц много и все они располагаются в итоге в ряд. Мне нужно расположить их по 4(в общен случае по n) на один ряд.

использую табличную разметку html.
Код: plaintext
<tr>....<xsl:if test="position() mod 4 = 0"></tr><tr></xsl:if>...</tr>
не помогает, нарушается валидность xml, в виду перекрывающихся tr, xsl:if.

посоветуйте как быть.
Спасибо.
...
Рейтинг: 0 / 0
Вставка закрывающего тега
    #36585255
Фотография Anton_Demin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sherzod_,

покажи xsl, а то не понятно ничего.
...
Рейтинг: 0 / 0
Вставка закрывающего тега
    #36585509
sherzod_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
<xsl:for-each select="group">

<table><tr>

	<td>
	<table border="1" style="border-collapse:1">
		<tr>
			<td colspan="3">
				<xsl:value-of select="@name"/>
			</td>
		</tr>
		<xsl:for-each select="descendant::row">
			<tr>
				<td><xsl:value-of select="field[@name='param1']"/></td>
				<td><xsl:value-of select="field[@name='param1']"/></td>
				<td><xsl:value-of select="field[@name='param1']"/></td>
			</tr>
		</xsl:for-each>
	</table>
	</td>

</tr></table>

</xsl:for-each>
...
Рейтинг: 0 / 0
Вставка закрывающего тега
    #36585752
Фотография Anton_Demin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sherzod_,

получилось так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
 <xsl:template match="data">
  <body>
  <table>
	<xsl:for-each select="group">
		<xsl:if test="position() mod 2 != 0"><tr></tr></xsl:if>
		<td>
			<xsl:call-template name="group"/>
		</td>
    </xsl:for-each>
   </table>
  </body>
 </xsl:template>
 
 <xsl:template name="group">
       <table border="1" style="border-collapse:1">
        <tr>
         <td colspan="3"><xsl:value-of select="@name"/></td>
        </tr>
        <xsl:for-each select="row">
         <tr>
		  <xsl:for-each select="field">
			<td><xsl:value-of select="text()"/></td>
		  </xsl:for-each>
         </tr>
        </xsl:for-each>
       </table>
 </xsl:template>
не ругайте сильно, сам знаю что изврат.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Вставка закрывающего тега
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]