Select-Feld aus PopUp heraus ändern

_voodoo

Erfahrenes Mitglied
Hallo,

Ohne große Umschweife mein Problem:

Ich öffne eine PopUp:
pms.php (öffnet das PopUp):
PHP:
function finduser(defaultLang, theTitle) {
	window.opener = this;
	window.open("finduser.php?lang="+defaultLang, theTitle, "width=250,height=150,scrollbars,resizable=no");
}

[...]

<form name="new_pm">
<select name="pm_to">
<option value="123">abc</option>
<option value="456" selected>def</option>
</select>
</form>
<a href="javascript:finduser('<?=$CFG['default_lang']?>', 'Benutzer suchen')">Benutzer suchen</a>

Im PopUp werden die Suchergebnisse in einem Select dargestellt, man wählt also eine Option aus und übernimmt sie. Zumindest ist das meine Gedanke.

finduser.php (das PopUp)
PHP:
function finduser_fill() {
	user_id = finduser.getElementById("userid").value;
	window.opener.new_pm.pm_to.value = user_id;
}

<select name="userid"><option value="123">abc</option></select>
<input type="button" onclick="javascript:finderuser_fill()">

Mein Ziel ist es nun den selektierten Wert im PopUp auf das select im Main zu übertragen, leider funktioniert das mit meiner Funktion nicht.

Dankeschön.

p.s.: Hat jemand eine Idee warum die Funktion zum Öffnen des PopUp's im IE nicht funktioniert - aber im Firefox problemlos?
 
Zuletzt bearbeitet:
_voodoo hat gesagt.:
Hat jemand eine Idee warum die Funktion zum Öffnen des PopUp's im IE nicht funktioniert - aber im Firefox problemlos?
Der 2te Parameter von window.open() darf kein Leerzeichen enthalten, lediglich Buchstaben, Ziffern und der Unterstrich sind regulär.


Zu der Frage ansich.... wenn du einen neuen Eintrag in ein <select> hineintun willst, musst du ein Option-Objekt erzeugen und das in die Liste "einhängen".

Wie das geht?-->http://selfhtml.net/javascript/objekte/options.htm#neue_elemente
 
Nein ich will keinen Neuen hinzufügen, sondern einen bestehenden selektieren.

Bsp:
Wird also im PopUp der Wert ABC ausgewählt und übernommen, soll in dem select vom Main Fenster selbiger Wert selektiert werden.

(Danke bzgl. des p.s.)
 
Und find ich dann raus wo ich auf true setzen muss? Ich meine wie sprech ich ein einzelnes Element des select's an?
Ansonsten muss ich dann wohl eine Schleife machen, die die einzelnen Elemente durchläuft und ggf. den selected Wert = true setzt ?!
 
_voodoo hat gesagt.:
Ansonsten muss ich dann wohl eine Schleife machen, die die einzelnen Elemente durchläuft und ggf. den selected Wert = true setzt ?!

Entweder so.... oder du gibst den Optionen zusätzlich zu "value" eine ID(identisch mit value)...
damit kannst du jeweilige Option dann direkt ansprechen.
 
PHP:
function finduser_fill() {
	userid = document.finduser.userid.value;
	opener.document.new_pm.pm_to.options[userid].selected = true;
}
Also die Variable "userid" beinhaltet nun den richtigen Wert, leider funktioniert die andere
Zeile nicht, ist der Syntax kompletter Mist oder weiß das Script nicht wohin mit der Information, wegen PopUp und so?
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück