346 Stimmen

Was ist der beste Weg, um eine Tabellenzeile mit jQuery zu entfernen?

Was ist die beste Methode, um mit jQuery eine Tabellenzeile zu entfernen?

2voto

silvster27 Punkte 1856

Wenn sich die Reihe, die Sie löschen möchten, möglicherweise ändert, können Sie dies verwenden. Übergeben Sie einfach dieser Funktion die Zeilennummer, die Sie löschen möchten.

function removeMyRow(docRowCount){
   $('table tr').eq(docRowCount).remove();
}

2voto

Friend Punkte 34570

Wenn Sie HTML wie dieses haben

wo userid="123" ein benutzerdefiniertes Attribut ist, das Sie dynamisch befüllen können, wenn Sie die Tabelle erstellen,

können Sie etwas Ähnliches verwenden

  $(".spanUser").live("click", function () {

        var span = $(this);   
        var userid = $(this).attr('userid');

        var currentURL = window.location.protocol + '//' + window.location.host;
        var url = currentURL + "/Account/DeleteUser/" + userid;

        $.post(url, function (data) {
          if (data) {
                   var tdTAG = span.parent(); // ELTERN VON SPAN-TAG ERHALTEN
                   var trTAG = tdTAG.parent(); // ELTERN VON TD-TAG ERHALTEN
                   trTAG.remove(); // TR-TAG LÖSCHEN == GESAMTE TABELLEREIHE LÖSCHEN
             } else {
                alert('Entschuldigung, es gibt einen Fehler.');
            }
        }); 

     });

In diesem Fall kennen Sie die Klasse oder ID des TR-Tags nicht, aber Sie sind trotzdem in der Lage, ihn zu löschen.

1voto

$('tr').click(function()
 {
  $(this).remove();
 });

Ich denke, Sie werden den obigen Code ausprobieren, da er funktioniert, aber ich weiß nicht, warum er manchmal funktioniert und dann die ganze Tabelle entfernt wird. Ich versuche auch, die Zeile durch Klicken auf die Zeile zu entfernen, aber ich konnte keine genaue Antwort finden.

1voto

SparkyUK2104 Punkte 25

Ich weiß, dass dies ein alter Beitrag ist, aber ich wollte dasselbe tun und habe festgestellt, dass die akzeptierte Antwort bei mir nicht funktioniert hat. Ich gehe davon aus, dass sich JQuery seit der Abfassung dieses Beitrags weiterentwickelt hat.

Wie dem auch sei, ich habe folgendes für mich funktionieren gefunden:

$('#resultstbl tr[id=nameoftr]').remove();

Weiß nicht, ob das jemandem hilft. Mein obiges Beispiel war Teil einer größeren Funktion, also habe ich es nicht in einen Ereignislistener verpackt.

0voto

Kamuran Sönecek Punkte 3272

Id ist jetzt kein guter Selektor. Sie können einige Eigenschaften auf den Zeilen definieren. Und Sie können sie als Selektor verwenden.

kleiner Fisch
kleiner Hund
lego starwars

und Sie können eine Funktion verwenden, um die Zeile wie folgt auszuwählen (ES6):

const rowRemover = (category,type)=>{
   $(`tr[category=${category}][type=${type}]`).remove();
}

rowRemover('petshop','fish');

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X