Home | Registrieren | Einloggen | Suchen | Aktuelles


Forum » Auszeichnungssprachen » Werte von Popup -> Input-Feld Antworten
Werte von Popup -> Input-Feld

alexhaid
Fachidiot


Beiträge: 132


Hey JavaScript-Freaks.

Ich habe ein Formular mit verschiedenen Feldern. Unter anderem will ich aus einer Liste ein Bild auswählen, dessen Name dann in einem Formularfeld erscheinen soll.

Da es eine sehr lange Liste von Bildern ist (ca. 100 und ständig wachsend) und ich gerne ein Vorschau-Icon haben will, hab ich mir das wie folgt vorgestellt:
Ich will gerne in einem Popupfenster eine Tabelle mit allen Icons und einem Link öffnen. Beim Klick auf den Link soll sich das Popup schließen und der Name des geklickten Bildes soll an ein Input-Feld im Formular übergeben werden.

Aber wie übergebe ich einen Wert von dem Popup an das andere Browserfenster?
Ist es einfacher wenn ich das statt dem Popup mit einer <div> mach?

Thx, alex

  Profil   E-Mail   Editieren   Zitieren

Der_HOmer[DE]
Quasselstrippe


Beiträge: 239


mit
1:
document.opener.formular.textfeld.value = document.opener.formular.textfeld.value + "smilie";

und dann
1:
document.self.close();


ich hoff ich hab mich da jetzt nicht versehen.

Das baust du in eine Funktion im Popup ein.
Dann die Bilder mit onClick="funktion()" versehen.

Diese Nachricht wurde geändert von: Der_HOmer[DE]
  Profil   Editieren   Zitieren

alexhaid
Fachidiot


Beiträge: 132


Hallo Der_HOmer[DE].

Danke für deine Antwort. Tut mir leid, aber ich versteh da was nicht ganz.
Was ist opener? Ist das der Name des Hauptfensters, in dem das Input-Feld auf den Wert wartet?
Formular muss der Name des Formulars sein und textfeld der des Input-Feldes?

Danke auf jeden Fall.
alex

  Profil   E-Mail   Editieren   Zitieren

alexhaid
Fachidiot


Beiträge: 132


Hallo.
Ich habe es jetzt folgendermaßen geschrieben.
1: 
2: 
3: 
4: 
5: 
6: 
7: 
8:
<script language="JavaScript" type="text/JavaScript">
<!--
function put_pic() {
	document.opener.formular.inp_image.value = document.opener.formular.inp_image.value + "smilie";
	document.self.close();
}
//-->
</script>


Bekomme aber die Fehlermeldung:
document.opener.formular ist Null oder kein Objekt.

????????

Und wie bekomme ich statt dem 'smilie' den Namen des Bildes?

Danke, alex

Diese Nachricht wurde geändert von: alexhaid
  Profil   E-Mail   Editieren   Zitieren

Der_HOmer[DE]
Quasselstrippe


Beiträge: 239


Sorry ich hatte mich versehen. nicht "document.", sondern "parent."
Das opener heist auf deutsch "Öffnender" oder so ähnlich. Auf jeden Fall ist es das Fenster, von dem aus das Popup geöffnet wurde.
Ich hab dir mal nen fertigen Quelltext aufgeschrieben:

Dateiname: egal
1: 
2: 
3: 
4: 
5: 
6: 
7: 
8:
<html>
<body>
<form name="formular">
<input type="text" name="bilder">
</form>
<a href="#" onClick="javascript:open('popup.html','_blank','width=500,height=200')">Bilderwahl</a>
</body>
</html>


Dateiname: popup.html
1: 
2: 
3: 
4: 
5: 
6: 
7: 
8: 
9: 
10: 
11: 
12: 
13: 
14: 
15: 
16: 
17: 
18: 
19: 
20: 
21: 
22: 
23: 
24: 
25:
<html>
<head>
<script language="JavaScript">
<!--
function bild(x)
{
  if(x == 1)
  {
    parent.opener.formular.bilder.value = "Bild 1";
    self.close();
  }
  if(x == 2)
  {
    parent.opener.formular.bilder.value = "Bild 2";
    self.close();
  }
}
//-->
</script>
</head>
<body>
<a href="javascript:bild(1)">Bild 1</a><br>
<a href="javascript:bild(2)">Bild 2</a><br>
</body>
</html>


bei mir mit IE6 funktioniert das so
Ich hoffe du kannst darin das für dich wichtige finden.

Gruß
Paul

  Profil   Editieren   Zitieren

alexhaid
Fachidiot


Beiträge: 132


Super. Jetzt funktionierts.
Danke für deine Hilfe.

God bless,
alex

  Profil   E-Mail   Editieren   Zitieren
 

Antworten
Nach oben