select tag mit option tags befüllen

M00ser

Grünschnabel
Hi Leute,

Ich hab da mal eine Frage, ob das überhaupt möglich ist ...

Ich kann ja ein Feld eines Forumlars über

Code:
document.form.feldname.value = wert;

befüllen.

Jetzt will ich das ganze aber bei einem select machen.
Im HTML code sieht das ganze so aus:

Code:
<select name="name"></select>

durch eine funktion sollen da <option> Tags mit rein :D
die Funktion arbeitet richtig, denn normale Textfelder kann ich befüllen, kein Problem. Nur weiß ich halt nicht wie ich das ansprechen muss ... also nach dem Motto

Code:
document.form.feldname.option = wert;

aber das wär ja zu leicht gewesen, hehe.

Geht das überhaupt so oder muss ich mir da was anderes überlegen? Und wenn man es so machen kann wie? Hab da schon rumgegoogelt wie'n Irrer aber nix gefunden ...

Greets M00ser
 
Danke für die Antwort.

Das funktioniert auch soweit im Firefox, aber im IE nicht. Gibt es Alternativen dazu? Oder is der IE zu bes****ert so was auszugeben?
Ich hab zum Test auch mal einige Attribute weggelassen, aber selbst mit
Code:
new Option("Test", "test")
kann der IE es nicht anzeigen.
 
joa das ist auch sehr gut möglich ;)

so geht es im Firefox, aber nicht im IE:
Code:
NeuerEintrag = new Option("Test", "test", true);
window.opener.document.Form["field"].options[0] = NeuerEintrag;

In new Option() hab ich schon alles mögliche versucht mit den Parametern, immer das selbe der Firefox mags der IE nicht.
 
Im IE kannst du keine Elemente dokumentübergreifend verschieben...du musst die Option also auch in window.opener.document erzeugen, wenn du sie dort benutzen willst.
 
jo das Szenario sieht so aus:

Ich wähle aus einem Pupup einen Eintrag aus. Aufgrund dieser Wahl soll sich das <select> Tag mit <option> Tags befüllen und das nicht in dem Popup sondern in der Seite von der aus ich das Popup geöffnet habe.
Mit allen Felden geht das eigentlich recht gut, nur mit <select>s hab ich das nciht hinbekommen.
 
wie gesagt, du musst die Option auch da erzeugen, wo du sie brauchst:
Code:
window.opener.NeuerEintrag = new Option("Test", "test", true);
window.opener.document.Form["field"].options[0] = window.opener.NeuerEintrag;
 
Probiers mal so:
Code:
<script type="text/javascript">
<!--
opener.addOption=function(formName,selectName,index,text,value)
{
  
  NeuerEintrag = opener.document.createElement('option');
  NeuerEintrag.text=text;
  NeuerEintrag.value=value;
  opener.document.forms[formName].elements[selectName].options[index] = NeuerEintrag;
}
//Aufruf
opener.addOption('form','feldname',0,'Text','text');
//-->
</script>
 

Neue Beiträge

Zurück