2017-02-16 28 views
0

Ich versuche, eine Tabelle zu aktualisieren, um die neue Zeile anzuzeigen, wenn ich einen Datensatz speichere. Mein Code lädt derzeit die gesamte Tabelle zusammen mit der vorhandenen Tabelle erneut. Zum Beispiel sehe ich Zeilen 1-15, dann füge ich eine Zeile hinzu und sehe 31 Zeilen insgesamt, Zeilen 1-15 und dann Zeilen 1-16 alle in derselben Tabelle.Fehler: Die Eigenschaft 'replaceChild' von undefined kann nicht gelesen werden

Hier ist mein Code für die Ersetzungsfunktion, die meine ursprüngliche Ladefunktion aufruft, wenn es Zeit ist, die Daten zu ersetzen. Ich habe das auf ein anderes Beispiel gestützt, das ich gesehen habe.

Ich bin eindeutig kein JavaScript-Experte, so würde jede Hilfe geschätzt werden.

+0

'var alt_tbody = document.querySelector (" tbody ")' –

Antwort

1

getElementsByTagName Funktion gibt ein HTML Collection (Array-artiges Objekt), das bedeutet, dass Sie, welches Element des Arrays Sie wollen (auch wenn es nur ein Element) angeben müssen.

So Ihr Code sollte grundsätzlich sein:

var old_tbody = document.getElementsByTagName('tbody')[0]; 

Oder Sie können querySelector verwenden, die nur das erste verglichene Element zurückgibt. Wie folgt aus:

var old_tbody = document.querySelector('tbody'); 
0

getElementsByTagName gibt tatsächlich eine Sammlung von Elementen, so parentNode funktioniert nicht. Um den eigentlichen DOM-Knoten zu erhalten, würden Sie Folgendes tun.

var old_tbody = document.getElementsByTagName('tbody')[0]; 
Verwandte Themen