Quelle est la meilleure méthode pour supprimer une ligne de tableau avec jQuery ?
Réponses
Trop de publicités?Tu as raison :
Cela fonctionne très bien si votre ligne a une `` , tels que :
Si vous n’avez pas un `` , vous pouvez utiliser l’une de de jQuery pléthore de sélecteurs.
En supposant que vous avez un bouton/lien à l'intérieur d'une cellule de données dans votre tableau, quelque chose comme ceci ferait l'affaire...
$(".delete").live('click', function(event) {
$(this).parent().parent().remove();
});
Cela permettra d'éliminer le parent du parent du bouton/lien sur lequel vous cliquez. Vous avez besoin d'utiliser la relation parent() car c'est un objet jQuery, pas normal d'un objet DOM, et vous avez besoin d'utiliser la relation parent() deux fois, parce que le bouton se trouve à l'intérieur d'une cellule de données, qui vit à l'intérieur d'une ligne....qui est ce que vous voulez supprimer. $(this) est le bouton cliqué, alors il suffit d'avoir quelque chose comme ceci supprime uniquement le bouton:
$(this).remove();
Tout cela permettra de supprimer les données de la cellule:
$(this).parent().remove();
Si vous souhaitez simplement de cliquer n'importe où sur la ligne à supprimer quelque chose de ce genre. Vous pouvez facilement modifier ce pour inviter l'utilisateur ou de ne travailler que sur une double-cliquer sur:
$(".delete").live('click', function(event) {
$(this).parent().remove();
});
Espère que ça aide...j'ai eu du mal sur ce un peu moi-même.
Vous pouvez utiliser:
$($(this).closest("tr"))
pour trouver la ligne de la table parent d'un élément.
Il est plus élégant que le parent().parent() qui est ce que j'ai commencé à faire et vite appris l'erreur de mes moyens.
--Edit -- Quelqu'un a souligné que la question était à propos de la suppression de la ligne...
$($(this).closest("tr")).remove()
Comme l'a souligné ci-dessous, vous pouvez tout simplement faire:
$(this).closest('tr').remove();
Une semblable extrait de code peut être utilisé pour de nombreuses activités telles que le tir des événements sur plusieurs éléments.