Удалить статью и потяните первую из следующей страницы

StackOverflow https://stackoverflow.com/questions/4244680

  •  27-09-2019
  •  | 
  •  

Вопрос

Я пытаюсь построить блог с системой страниц (EX. 5 Статьи на странице). Все в порядке с самой пагинацией, но рядом с каждой статьей я включал кнопку «Удалить», позволяющую администратору динамически удалять (jQuery) связанную статью и его содержание. Теперь я хочу «добавить» (без обновления) первой статьи следующей страницы, когда я удаляю статью, вторую, когда я удаляю другую статью, то третий и так далее. Я хочу, чтобы это не было, чтобы иметь пустую страницу, если я продолжу на удалении статей без обновления.

Я на самом деле использую PHP и базу данных MySQL для хранения данных для Paginating, я использую что-то подобноесвязь.

Это было полезно?

Решение

Я изначально ответил на дубликат, но думаю, что может быть удалено, поэтому копирование здесь:

jquery делает это красивым и легким. Это предполагает, что у вас есть файл PHP, называемый ajax / delete-aptry.php, который принимает идентификатор статьи для удаления в качестве параметра, и идентификатор статьи последней статьи на странице в качестве параметра и возвращает HTML Следующая статья. Он также предполагает, что все ваши статьи имеют класс «статьи», а идентификатор «Статья-230», где 230 является идентификационным номером. Я уверен, что вы можете адаптировать его к вашей собственной HTML-структуре.

$('.article-delete').click(function (event) {
  $(this).closest('.article').remove(); // possibly use a more fancy-looking hide(), and remove on complete?

  var lastArticleId = $('.article').last().attr('id').replace('article-','');
  var thisArticleId = $(this).attr('id').replace('article-','');
  $.get('ajax/next-article.php?last-article=' + lastArticleId + '&article-to-delete=' + thisArticleId ,function (data) {
    $('#article-list').append(data);
  });
  event.preventDefault();
});

Обратите внимание, что это просто грубый пример. Потребует некоторых улучшений для надежности. Это также непроверено, поэтому он может добавить ошибки JS повсюду.

Другие советы

в основном, когда вы успешно удаляете статью, в том же запросе (не делайте другой, не нужен), вы также получаете (если есть) следующую статью после последнего на странице (по идентификатору, дату публикации или другой) и верните HTML-код для добавления

Чтобы быть понятным: если мы полагаем, вы ищете статьи 16,17,18,19,20 Вы знаете, что последний элемент на странице 20. Если вы удалите статью 17, вы извлекаете Element 21, добавьте на страницу и установите это значение 21 как последнее значение на странице (и так далее)

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top