Почему мой текст находится внутри моей таблицы, когда мой TR не заполнен тегами TD или TH? - PullRequest
0 голосов
/ 05 февраля 2019

Если бы мне нужно было создавать только теги tr внутри таблицы и вводить тексты без каких-либо тегов TD / TH внутри, тексты появлялись бы вне таблицы, как показано в примерах кода ниже.Вы также можете запустить фрагмент кода, чтобы увидеть, что я имею в виду.

<!DOCTYPE html>
<html>
<table border="1">

<tr>
data1
</tr>
<tr>
data2
</tr>
<tr>
data3
</tr>

</table></body>
</html>

Однако, почему, когда я использую XML / XSL для отображения таблицы точно так же, как я бы выглядел выше, данные автоматически вставляются в строки таблицы, напримерэта картинка ниже

enter image description here

Ниже приведены мои коды XML и XSL:

XML:

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="test.xsl"?>

<test123 >
 <person >
 <firstName>John</firstName>
 <lastName>Smith</lastName>
 <mobile>0211223344</mobile>
 </person>
 <person>
 <firstName>Mary</firstName>
 <lastName>Jane</lastName>
 <mobile>0244556677</mobile>
 </person>
</test123>

XSL:

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns="http://www.w3.org/1999/xhtml">
 <xsl:output method="xml" indent="yes" encoding="UTF-8"/>
 <xsl:template match="/test123">
 <html>

<body>


<table border="1" >
  <xsl:for-each select="person">

<tr>
  <xsl:value-of select="firstName" />
</tr>

  </xsl:for-each>

</table>

  </body>

 </html>
 </xsl:template>
</xsl:stylesheet>

1 Ответ

0 голосов
/ 05 февраля 2019

Вам не хватает td | th для генерации ячейки таблицы, поэтому вам необходимо поместить данные в элемент td или td для создания правильного размещения данных в ячейке.Запустите фрагмент для справки:

И вы также можете редактировать код XSLT, обновляя для каждого раздела, см. Код ниже для вашей справки:

<xsl:for-each select="person">
            <tr>
                <td>
                    <xsl:value-of select="firstName" />
                </td>
            </tr>
 </xsl:for-each>

<!DOCTYPE html>
<html>
<table border="1">
    <tr>
        <td>data1</td>
    </tr>
    <tr>
        <td>data2</td>
    </tr>
    <tr>
        <td>data3</td>
    </tr>
</table>
</body>
</html>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...