wuscheck: Übergabe von values bei dynamischen Options-Feldern

Vielleicht kann mir jemand helfen:
Ich habe ein Script mit dynamischen Optionsfeldern, leider wird nur der Name nicht aber der "value" weitergegeben, damit das ganze in einem Formular weiterverarbeitet werden kann... Wie komme ich zu den values?

Hier der Quellcode (head):

<script language=JavaScript>
var m1Array =  new Array("('Wähle Gegner','',true,true)",
"('HSG abc')",
"('SG def')",
"('TV xyz')");
function populategegner(inForm,selected)
{
  var selectedArray = eval(selected + "Array");
  while (selectedArray.length < inForm.gegner.options.length)
  {
    inForm.gegner.options[(inForm.gegner.options.length - 1)] = null;
  }
  for (var i=0; i < selectedArray.length; i++)
  {
    eval("inForm.gegner.options[i]=" + "new Option" + selectedArray[i]);
  }
  if (inForm.team.options[0].value == '')
  {
    inForm.team.options[0]= null;
    if ( navigator.appName == 'Netscape')
 {
      if (parseInt(navigator.appVersion) < 4)
   {
        window.history.go(0);
      }
      else
   {
        if (navigator.platform == 'Win32' || navigator.platform == 'Win16')
  {
    if(!document.getElementById)
            window.history.go(0);
        }
      }
    }
  }
}

</script>

Hier der Quellcode (body):

<SELECT name=team onchange=populategegner(document.form,document.form.team.options[document.form.team.selectedIndex].value)>
      <OPTION selected value="">Wähle Team</OPTION>
      <OPTION value='m1'>Männer I</OPTION>
    </SELECT>
    <SELECT name=gegner>
      <OPTION selected value=""><--------------------</OPTION>
    </SELECT>

  1. Hallo wunscheck,

    bei mir läuft es unter Netscape damit (Javascript ist i.O.):

    <form name="myForm">
      <SELECT name="team"
    onchange="populategegner(document.myForm, document.myForm.team.value)">

    es sollte aber unterm MSIE so auch gehen, Opera weiß ich nicht. Kannst Du aber mit einem

    alert(selected);

    in der function leicht überprüfen.

    Gruß,
    Andreas

    1. Hallo wunscheck,

      bei mir läuft es unter Netscape damit (Javascript ist i.O.):

      <form name="myForm">
        <SELECT name="team"
      onchange="populategegner(document.myForm, document.myForm.team.value)">

      es sollte aber unterm MSIE so auch gehen, Opera weiß ich nicht. Kannst Du aber mit einem

      alert(selected);

      in der function leicht überprüfen.

      Gruß,
      Andreas

      Hallo Andreas,

      danke für Deine rasche Antwort, aber mit Deiner Lösung bekomme ich die values der Selectbox "team", ich brauche aber die values der Selectbox "gegner"... Hast du noch eine andere Lösung parat?

      Gruss

      Patrick

      1. Hallo Patrick,

        wo ist das Problem?

        document.myForm.gegner (<SELECT name="gegner") beinhaltet die Values der anderen Box, das sollte doch klar sein. Wenn Du dort einen auswählst, dann brauchst Du dort natürlich auch die Abfrage des onchange-Events und eine (wahrscheinlich eine neue) Javascriptfunktion die dann die Auswahl auswertet. Und das analog zu dem was ja bereits da ist.

        Gruß
        Andreas