input onchange mit daten aus popup
sir_letho
- javascript
hiho, ich habe folgendes problem und wollte einfach mal nachfragen ob es der holzweg ist oder ich einfach ein vollpfosten bin.
#situation#
input feld mit bildnamen aus der db. daneben link oder bild hochladen. da geht dann im popup der tinybrowser auf. dort kann man bild angklichen und dann wird fenster geschlossen und der bildname in das input feld übernommen. jetzt sollte mit einem onchange das vorschaubild geändert werden. nur genau den letzten schritt macht er nicht. nur wenn ich name abänder und mit der maus rausklicke. müsste ich da vllt ne funktion basteln die dauernd abfragt was sich in diesem textfeld abspielt? so in richtung autocomplete?
#script daten aus popup übernehmen#
function transfer(inhalt){
document.doublecombo.picture.value='';
document.doublecombo.picture.value += inhalt;
fenster.close();
#script imagewechsel#
function loadImage(uri, id) {
var img = new Image;
path = 'bilder/content/_thumbs/_';
img.src = uri;
img.onload = function() { document.getElementById(id).src = path + uri; };
img.onerror = function() { document.getElementById(id).src = path + uri; };
}
#inputfeld bildname#
<input type="text" name="picture" value="{$data.picture}" onchange="loadImage(this.value, 'picture');" />
vielleicht gibts ja auch noch einen ganz anderen lösungsweg. über tipps und scripte würde ich mich riesig freuen... :)
beste grüße
letho
Hi,
[...] der bildname in das input feld übernommen. jetzt sollte mit einem onchange das vorschaubild geändert werden. nur genau den letzten schritt macht er nicht.
Eventhandler reagieren nicht auf JavaScript-Aktionen. Du hast mit JavaScript die Möglichkeit, den Handler manuell aufzurufen.
müsste ich da vllt ne funktion basteln die dauernd abfragt was sich in diesem textfeld abspielt?
Warum? Du kennst den exakten Moment, in dem sich der Inhalt (durch Dein Script) ändert. Agiere einfach.
Cheatah
Hi,
[...] der bildname in das input feld übernommen. jetzt sollte mit einem onchange das vorschaubild geändert werden. nur genau den letzten schritt macht er nicht.
Eventhandler reagieren nicht auf JavaScript-Aktionen.
Davon unabhäging feuert onchange auch bei einer Nutzereingabe i.d.R. erst dann, wenn das Feld den Fokus verliert - davon ausgehend, dass die Änderung durch den Nutzer zu diesem Zeitpunkt als abgeschlossen angesehen werden kann.
MfG ChrisB