2017-08-31 17 views
0

Ich arbeite derzeit an einem Link-Generator, um mich selbst zu verbessern. Ich hatte Probleme beim Zugriff auf ein globales Array, das am Anfang meines Skripts innerhalb eines "Klick" -Ereignisses seit dem ersten Tag deklariert wurde. Ich habe versucht, es selbst zu debuggen, aber stecke fest!Javascript - Zugriff auf ein globales Array in einem DOM-Ereignis

Derzeit versuche ich, neue Daten aus einem Formular am Anfang des Arrays mit der Funktion unshift() hinzuzufügen. Die Rückgabe der Funktion sagt mir, dass es 4 Elemente gibt, aber die Daten sind nicht im Array.

Es sieht wie folgt aus:

var listeLiens = [{ 
    titre: "So Foot", 
    url: "http://sofoot.com", 
    auteur: "yann.usaille" 
    }, 
    { 
    titre: "Guide d'autodéfense numérique", 
    url: "http://guide.boum.org", 
    auteur: "paulochon" 
    }, 
    { 
    titre: "L'encyclopédie en ligne Wikipedia", 
    url: "http://Wikipedia.org", 
    auteur: "annie.zette" 
    } 
]; 

inputSubmit.addEventListener("click", function() { 
    form = document.querySelector("form"); 
    listeLiens.unshift({ 
    "titre": form.elements.titreLien.value, 
    "url": form.elements.urlLien.value, 
    "auteur": form.elements.nomAuteur.value 
    }); 
}); 

ich im Internet überprüft, konnte aber keine Lösung finden.

+1

Könnten Sie bitte Ihre Frage weiter erklären, es ist schwer zu verstehen. – Script47

+0

Sieht gut aus, siehe diese Geige: https://jsfiddle.net/t6vLu139/1/ Die Konsole protokolliert 4 Elemente im Array. Ich würde empfehlen, das Ereignis submit auf dem Formular statt click event auf der Schaltfläche zu verwenden. – Meldon

+0

"* aber die Daten werden nicht zum Array hinzugefügt. *" - warum denkst du das? Wo (und besonders wann) benutzen Sie das Array? – Bergi

Antwort

0

Ich versuchte ein paar Dinge, um das Problem zu lösen, aber es ist immer noch der gleiche Fehler! Es ist mir nicht gelungen, auf das globale Array zuzugreifen, das am Anfang meines Skripts in meinem Ereignis deklariert wurde ... es scheint ein anderes Array zu sein, das im Ereignis verwendet wird, nicht dasselbe wie am Anfang des Skripts ...