У меня есть таблица html, которая добавляет строку в последнюю строку с помощью jquery Например
как я хочу это
row1 >> Только что опубликовал
row2 >> опубликовано за 1 минуту до
row3 >> опубликовано на 2 мин. раньше
Но это похоже на
row1 >> опубликовано на 2 мин. раньше
row2 >> опубликовано за 1 минуту до
row3 >> Только что опубликовал
<tbody>
<table align = "center" style = "width:auto" id = "ex-table">
<tr id = "tr">
<center><th>Date of join</th></center>
<center><th>name</th></center>
<center><th>designation</th></center>
<center><th>exprience</th></center>
<center><th>salary</th></center>
</tr>
</table>
</tbody>
<script src = "https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script>
var database = firebase.database().ref().child('user');
database.on('value', function(snapshot){
if (snapshot.exists()){
var content = ' ';
snapshot.forEach(function(data){
var val = data.val();
content +='<tr>';
content += '<td>' + val.daeofjoin + '</td>';
content += '<td>' + val.name + '</td>';
content += '<td>' + val.designation + '</td>';
content += '<td>' + val.experience + '</td>';
content += '<td>' + val.salary + '</td>';
content += '</tr>';
});
$('#ex-table').append(content)
}
});
</script>

Вы можете использовать append() / prepend() внутри цикла forEach в зависимости от результатов, которые вы получите
snapshot.forEach(function(data){
var val = data.val();
content ='<tr>'; // <<<< remove + from here
content += '<td>' + val.daeofjoin + '</td>';
content += '<td>' + val.name + '</td>';
content += '<td>' + val.designation + '</td>';
content += '<td>' + val.experience + '</td>';
content += '<td>' + val.salary + '</td>';
content += '</tr>';
$('#ex-table').append(content); //$('#ex-table').prepend(content);
});
Note: don't forget to remove + sign from first
content =.. ifappend()not work as expected you can try useprepend()$('#ex-table').prepend(content);
На самом деле я не знаю, будет ли мой код работать с firebase или нет .. но вы можете попробовать его, если он работает нормально, если нет, вы все равно можете взглянуть на firebase -> обратный порядок даты
Редактировать .. Я только что понял (из комментария), что мой код подтолкнет строку заголовка вниз .. так что вы можете использовать insertAfter()$(content).insertAfter('#ex-table > tr:first');, эта строка кода вставит новые строки после первой строки
@Shiva извини за это минутку
@Shiva попробуйте $(content).insertAfter('#ex-table > tr:first'); вместо добавления или добавления строки
извини даже это не сработает, из-за этого вся таблица исчезнет
@Shiva не должно быть .. но пока вы дали первую строку id = "tr", вы можете попробовать $(content).insertAfter('#tr');
Большое спасибо ... С днем
рад помочь @Shiva .. Хорошего дня тоже :-)
Большое спасибо .... работает, я использую prepend, но <th> (заголовки таблиц) также возвращаются к последней строке