Как преобразовать массив данных в объединенную HTML-таблицу с помощью nodejs - PullRequest
0 голосов
/ 15 октября 2018

Сначала я получаю массив данных SELECT из базы данных mysql.Массив выглядит так:

[
{client:A, day:mon, product_name:product1},
{client:A, day:mon, product_name:product2},
{client:A, day:tue, product_name:product3},
{client:B, day:mon, product_name:product4},
]

С массивом я создал HTML-таблицу, которая выглядит следующим образом:

client | day | product_name
---------------------------
A      | mon | product_1
---------------------------
A      | mon | product_2
---------------------------
A      | tue | product_3
---------------------------
B      | mon | product_4

Но вместо этого я хотел бы создать объединенную таблицу, как показано ниже.Как бы я это сделал?Я знаю, что должен использовать rowspan.Но так как это большой массив, Я ищу какой-то простой алгоритм или модуль npm, который делает это для меня. (array)=>(html code)

client | day | product_name
---------------------------
       | mon | product_1
             --------------
A      |     | product_2
       --------------------
       | tue | product_3
---------------------------
B      | mon | product_4

1 Ответ

0 голосов
/ 15 октября 2018

Вы можете использовать свойство rowspan, равное <td>, чтобы ячейка занимала несколько строк по вертикали.

Поскольку вы не предоставили пример кода, вот краткий общий пример, основанный на данных заполнителя:

<table>
    <tr>
        <th>client</th>
        <th>day</th>
        <th>product_name</th>
    </tr>
    <tr>
        <td rowspan="3">A</td>
        <td rowspan="2">mon</td>
        <td>product_1</td>
    </tr>
    <tr>
        <td>product_2</td>
    </tr>
    <!-- And so on -->
</table>

Конечно, вы хотите динамически применять значения rowspan в зависимости от того, сколько строк вам нужно, но как это сделать, будет зависеть от того, как вы строите таблицу HTML.

...