Frage

Ich versuche, ein Blog mit einem Paginierung System aufzubauen (ex. 5 Artikeln pro Seite). Alles ist in Ordnung mit der Paginierung sich aber neben jedem Artikel, den ich enthalten eine Schaltfläche „Löschen“ ermöglicht dem Administrator dynamisch zu entfernen (jquery), um den entsprechenden Artikel und deren Inhalt. Was ich will, ist jetzt auf „Append“ (ohne erfrischend) den ersten Artikel der nächsten Seite, wenn ich einen Artikel löschen, die zweite, wenn ich einen anderen Artikel löschen, dann die dritte und so weiter. Ich möchte dies eine leere Seite zu haben, um zu vermeiden, wenn ich auf halte Artikel zu löschen, ohne zu aktualisieren.

Ich verwende eigentlich PHP und eine MySQL-Datenbank zum Speichern von Daten für Paginieren ich etwas ähnliches wie dies mit Link .

War es hilfreich?

Lösung

ich ursprünglich auf dem Duplikat beantwortet, aber denke, dass möglicherweise gelöscht werden, so das Kopieren von hier:

jQuery macht es schön und einfach. Dies setzt voraus, Sie eine PHP-Datei haben ajax / delete-article.php genannt, die eine Artikelnummer als Parameter gelöscht werden, und die Artikelnummer des letzten Artikels auf der Seite als Parameter und gibt den HTML-Code der weiter zum nächsten Artikel. Es geht auch davon aus allen Ihren Artikeln die „Artikel“ Klasse, und die ID „Artikel-230“, wo 230 die ID-Nummer. Ich bin sicher, dass Sie es zu Ihrer eigenen HTML-Struktur anpassen können.

$('.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();
});

Beachten Sie, dass dies nur ein grobes Beispiel. Werden einige Verbesserungen für Robustheit erfordern. Es ist auch nicht getestet, so könnte es erbrechen überall JS Fehler.

Andere Tipps

im Grunde, wenn Sie erfolgreich einen Artikel löschen, in dem gleichen Antrag (nicht ein anderes machen, ist nicht erforderlich) Sie abrufen auch (falls vorhanden) weiter zum nächsten Artikel nach dem letzten in Seite (von ID, Datum der Veröffentlichung oder andere) und gibt den HTML-Code zu append

klar sein: Wenn wir Sie Artikel 16,17,18,19,20 annehmen suchen Sie wissen, dass letzte Element in Seite 20. Wenn Sie Artikel löschen 17 dann abrufen Sie Element 21, append in Seite und Set dieser Wert 21 als letzter Wert in Seite (und so weiter)

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top