JavaScript error: Uncaught TypeError: Cannot read property 'entfernen' undefined
Ich habe ein Skript zum entfernen von hochgeladenen Dateien nach dem Hinzufügen zum Erfolg, aber ich bekomme diesen Fehler auf der Website, wenn es lädt.
"Uncaught TypeError: Cannot read property 'remove' of undefined"
Was fehlt?
<script>
onload=function() {
document.querySelectorAll("li[id^='uploadNameSpan']")[0].remove();
}
</script>
- Sollte es nicht sein Fenster.onload ???
- Dies ist der gleiche.
- Möglich, Duplikat der Uncaught TypeError: Cannot read property 'Wert' undefined
- Nichts passt zu Ihrem selector-Muster.
- Veröffentlichen Sie Ihre HTML.
- Entweder der Selektor ist falsch...oder Elemente Hinzugefügt werden, nachdem der code ausgeführt wird. Wenn es die letzteren müssen zu zeigen, wie Sie Hinzugefügt werden. Alle Erklärungen, warum es scheitert nicht, Sie zur Lösung zu machen, damit es funktioniert
- Trotzdem, überprüfen Sie Ihre HTML-und der Selektor und dann Lesen Sie über die removeChild-Methode.
- basierend auf dem Namen, könnte es sein, dass die id wird in ein span-tag und nicht in ein list item
Du musst angemeldet sein, um einen Kommentar abzugeben.
Grundsätzlich das Problem, dass zu der Zeit Sie diesen code aufzurufen, hat man keine Elemente in den DOM-entsprechend der Abfrage
"li[id^='uploadNameSpan']"
. SoquerySelectorAll
gibt eine leere NodeList dieundefined
am0
position (oder jede position, für diese Angelegenheit).Panne was ist passiert:
Je nach Anwendungsfall, eine Sache, die Sie tun können, ist eine überprüfung der Anzahl der Elemente zurückgegeben, bevor Sie versuchen zu entfernen:
Im Allgemeinen, Sie haben zu stellen Sie sicher, dass das element in den DOM zu der Zeit, die Sie versuchen, es zu entfernen.
this returns []
nicht wirklich präzise ... ist elementList kein array