• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Datei auswählen und Namen übergeben

blabla333

Mitglied
Ich möchte per JS ein img-Element in einen Div-Container einfügen. Soweit ist das kein Problem.
Code:
function insert_image() {
    var element= this.getelement();
    // Dateinamen abfragen
    jQuery(element).after('<img src="images/dateiname.jpg">');
};
Nun soll die Datei bzw. der Dateiname vom User ausgewählt werden.
Praktisch soll es so aussehen:
1) Der User klickt auf einen Button -> Funktion insert_image() wird aufgerufen
2) Es erscheint eine Liste mit den vorhandenen Bildern
3) Mit Klick auf ein Bild wird der Dateiname übernommen und als Quelle für das eingefügte img-Element gesetzt

Ich weiß jetzt schlicht nicht, wie ich diese Abfrage gestalten soll.
 
Das ist so nicht richtig. Verwende für Events grundsätzlich Eventhandler oder -listener; Inline-JS wie onclick="" ist 1999 und somit Tabu. :(

1. Wozu brauchst du die Variable Element und was macht getelement()? Sofern du das Event nicht auf ein bestimmtes HTML-Element aufrufst und den jeweiligen Node ermitteln willst, wäre target der richtige Ansatz, also
Code:
$('body').click(function(e) {
  var foo = e.target.nodeName;
});
im anderen Fall ist es schlicht $(this).

2. Sprichst du erst von einer Bilderliste und sagst dann: "mit Klick auf ein Bild". Klickt der User nun auf ein Bild oder Listenelement, steht der Bild(Datei)name im HTML, wird er als Data-Attribut übergeben, .... ? Dementsprechend muss das Element adressiert werden, also $(this).prop('src'), $(this).html(), $(this).data('image-name') ....

Das Ergebnis wäre deine var element und diese musst du als Stringverknüpfung in das after() einfügen.
 
Zurück
Oben