Подгрузка таблицы ajax

170
15 ноября 2021, 05:20

В таблицу на странице из БД аяксом подгружается таблица вместе с заголовками, как сделать, чтобы заголовок подгружался 1 раз, а не после каждой строки из таблицы БД?

if (result.History_User != null) {
                                    for (var i = 0; i < result.History_User.Total.length; i++) {
                                        var OrdTime = new Date(result.History_User.TimeCloseOrder[i] * 1000);
                                        OrdYear = addZero(OrdTime.getFullYear());
                                        OrdMonth = addZero(OrdTime.getMonth() + 1);
                                        OrdDay = addZero(OrdTime.getDate());
                                        OrdHour = addZero(OrdTime.getHours());
                                        OrdMin = addZero(OrdTime.getMinutes());
                                        OrdSec = addZero(OrdTime.getSeconds());
                                        if ((result.History_User.Type[i] == 'BUY')) {
                                            res +='<tr class="orders_table_heading">' + '<th>Currency</th>' + '<th>Buy/Sell</th>' + '<th>Amount</th>' + '<th>Price</th>' + '<th>Total</th>' + '<th>Time</th>' + '<th>Status</th>'+'</tr>'+
                                                '<tr class="my__table-row" id="Orders_Row_' + result.History_User.OrderID[i] + '">' +
                                                '<td class="my__table-a">' + result.History_User.Prod[i] + '/' + result.History_User.Val[i] + '</td>' +
                                                '<td class="my__table-b" name= "Buy"><img src="img/icons/my__up.png"></td>' +
                                                '<td class="my__table-c">' + result.History_User.Amount[i] / 100000000 + '</td>' +
                                                '<td class="my__table-d">' + result.History_User.Price[i] + '</td>'  +
                                                '<td class="my__table-g">' + result.History_User.Total[i] / 100000000 + '</td>' +
                                                '<td class="my__table-t" name="Time_' + result.History_User.TimeCloseOrder[i] * 1000 + '">' + OrdYear + '.' + OrdMonth + '.' + OrdDay + ' <span>' + OrdHour + ':' + OrdMin + ':' + OrdSec + '</span></td>' +
                                                '<td class="my__table-z">Filled</td>' +
                                                '</tr>';
                                        }
                                        if ((result.History_User.Type[i] == 'SELL')) {
                                            res += '<tr class="orders_table_heading">' + '<th>Currency</th>' + '<th>Buy/Sell</th>' + '<th>Amount</th>' + '<th>Price</th>' + '<th>Total</th>' + '<th>Time</th>' + '<th>Status</th>'+'</tr>'+
                                                '<tr class="my__table-row" id="Orders_Row_' + result.History_User.OrderID[i] + '">' +
                                                '<td class="my__table-a">' + result.History_User.Prod[i] + '/' + result.History_User.Val[i] + '</td>' +
                                                '<td class="my__table-b" name= "Sell"><img src="img/icons/my__down.png"></td>' +
                                                '<td class="my__table-c">' + result.History_User.Amount[i] / 100000000 + '</td>' +
                                                '<td class="my__table-d">' + result.History_User.Price[i] + '</td>'  +
                                                '<td class="my__table-g">' + result.History_User.Total[i] / 100000000 + '</td>' +
                                                '<td class="my__table-t" name="Time_' + result.History_User.TimeCloseOrder[i] * 1000 + '">' + OrdYear + '.' + OrdMonth + '.' + OrdDay + ' <span>' + OrdHour + ':' + OrdMin + ':' + OrdSec + '</span></td>' +
                                                '<td class="my__table-z">Filled</td>' +
                                                '</tr>';
                                        }
                                    }
                                }

Строка с заголовком: '<tr class="orders_table_heading">' + '<th>Currency</th>' + '<th>Buy/Sell</th>' + '<th>Amount</th>' + '<th>Price</th>' + '<th>Total</th>' + '<th>Time</th>' + '<th>Status</th>'+'</tr>'

Answer 1

можно просто поставить условие:

if (i == 0) res +='<tr class="orders_table_heading">' + '<th>Currency</th>' + '<th>Buy/Sell</th>' + '<th>Amount</th>' + '<th>Price</th>' + '<th>Total</th>' + '<th>Time</th>' + '<th>Status</th>'+'</tr>';
res += '<tr class="my__table-row"...

но если у вас не с первой итерации попадает в (if result.History_User.Type[i] == 'BUY' или result.History_User.Type[i] == 'SELL'), можно сделать отдельный итератор для этих 2 условий и проверить точно так его вместо того что стоит в примере выше "i", а ещё лучше вынести заголовок над циклом

READ ALSO
Редактируемая таблица на чистом js

Редактируемая таблица на чистом js

Всем добрый деньДелаю динамическую таблицу, с подгрузкой данных из jsone

333
ошибка с использованием Event

ошибка с использованием Event

event зачеркнут и появляется это пояснение:

155