Pergunta

Estou tentando construir um blog com um sistema de paginação (por exemplo, 5 artigos por página). Tudo está bem com a paginação em si, mas, ao lado de cada artigo, incluí um botão "excluir", permitindo que o administrador remova dinamicamente (jQuery) o artigo relacionado e seu conteúdo. O que eu quero agora é "anexar" (sem atualizar) o primeiro artigo da próxima página quando excluo um artigo, o segundo quando excluo outro artigo, depois o terceiro e assim por diante. Quero que isso evite ter uma página em branco se continuar excluindo artigos sem atualização.

Na verdade, estou usando o PHP e um banco de dados MySQL para armazenar dados para pagar estou usando algo semelhante a estelink.

Foi útil?

Solução

Eu respondi originalmente na duplicata, mas acho que isso pode ser excluído, então copiar aqui:

JQuery torna bom e fácil. Isso pressupõe que você tenha um arquivo php chamado Ajax/delete-ticle.php, que leva um ID do artigo a ser excluído como um parâmetro, e o artigo do último artigo da página como um parâmetro e retorna o HTML do Próximo artigo. Ele também pressupõe que todos os seus artigos tenham a classe "Artigo" e o artigo do ID "230", onde 230 é o número de identificação. Tenho certeza de que você pode adaptá -lo à sua própria estrutura 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();
});

Observe que este é apenas um exemplo difícil. Exigirá algumas melhorias para a robustez. Também é não testado, para que possa lançar erros de JS em todos os lugares.

Outras dicas

Basicamente, quando você exclui com sucesso um artigo, na mesma solicitação (não faça outro, não é necessário), você também recupera (se houver) o próximo artigo após o último na página (por id, data de publicação ou outra) e retorne o Código HTML para anexar

Para deixar claro: se supõe que você esteja procurando artigos 16,17,18,19,20, você sabe que o último elemento na página é 20. Se você excluir o artigo 17, recupera o elemento 21, anexa na página e defina este valor 21 como último valor na página (e assim por diante)

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top