Удалить статью и вытащить первую со следующей страницы - PullRequest
2 голосов
/ 22 ноября 2010

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

Я на самом деле использую php и базу данных mysql для хранения данных для разбивки на страницы. Я использую нечто подобное этому ссылка .

Ответы [ 2 ]

0 голосов
/ 22 ноября 2010

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

jQuery делает его красивым и простым. Предполагается, что у вас есть php-файл с именем ajax / delete-article.php, который принимает идентификатор статьи для удаления в качестве параметра и идентификатор статьи последней статьи на странице в качестве параметра и возвращает HTML следующая статья Предполагается также, что все ваши статьи имеют класс «article» и идентификатор «article-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 везде.

0 голосов
/ 22 ноября 2010

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

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

...