Riveran
@Riveran
JavaScript noob

Как добавить кнопку «показать ещё»?

У меня есть массив с данными и он рендерится на странцие через метод for вот пример кода
<% for(var i=0; i < reviews.length; i++) {%>
    		<div class="review-container">
    			<div class="account-icon-wrap">
    				<i class="material-icons account-icon">account_circle</i>
    			</div>
    			<div class="review-info">
    				<div class="name">
    					<%= reviews[i].name %>
    				</div>
    				<div class="rating">
    					<div class="stars-outer"></div>
    				</div>
    			</div>
    		</div> <% } %>


необходимо, что бы рендерились только первые 3 комментария, а остальные былы скрыты и открывались только при клике на кнопку "показать ещё", как можно это грамотно реализовать?
думал просто первые 3 рендерить, а остальные загонять в див с кнопкой и при помощи jquery делать show при клике, но так и не понял как это грамотно реализовать, может тут кто то сталкивался с таким?
  • Вопрос задан
  • 277 просмотров
Решения вопроса 1
romanko_vn
@romanko_vn
Ну не нужно подгружать все комментарии сразу, зачем?
А если их в сумме будет несколько тысяч?

При загрузке страницы берешь последние три записи из БД, а на кнопку "показать еще" вешай onclick и через Ajax отправляешь запрос на последующие записи и через .append() добавляешь их к уже существующим

/* start */
SELECT comment FROM baza ORDER BY id DESC limit 0, 3
/* 1 click show more */
SELECT comment FROM baza ORDER BY id DESC limit 3, 3
/* 2 click show more */
SELECT comment FROM baza ORDER BY id DESC limit 6, 3
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
07 июн. 2020, в 03:38
1000 руб./за проект
07 июн. 2020, в 01:42
300000 руб./за проект