Wasserwiesel: Auswertung des Value eines Optionfeldes in Javascript

Ihr könnt mir sicher weiter helfen. Denn ich bin zu blöd, eine Lösung im Net zu finden:

Problem:
Habe ein HTML Formular und in darin ein:

<select onChange=berechne(0) name=Person1>
<option value="234" selected>0</option>
<option value="123">Auswahl_1</option>
<option value="54">Auswahl_2</option>
<option value="55">Auswahl_3</option>
<option value="6">Auswahl_4</option>

jetzt hab ich folgendes gebaut:

for (i=0;i<=4;i++)
          if (document.forms[0].Person1.options[i].selected)
           betrag=betrag+(i*POS7);

so läuft es und i ist gleich mein Multiplikator. Aber ich will das value als Multiplikator nehmen.

Frage: wie müsste mein if (document.forms...... aussehen)

Vorgreifend ganz vielen lieben Dank, für jeden, der sich meines Kleinproblems annimmt.

  1. So sieht es aus:

    if (document.getElementsByName('Person1')[0].options[i].selected) { ... }

    Wenn Du die ID referenzierst, solltest Du sie auch setzen, ansonsten nehme den Namen!

    Gruß, LX

    1. Das war schon mal ne grosse Hilfe.. und wie gehts weiter:

      wie nehme ich nun den Value als Multiplikator:
      Bisher hatte ich:

      if (document.getElementsByName('Person1_Pos8')[0].options[i].selected)
      betrag=betrag+(i*POS9);

      also müsste ich das : betrag=betrag+(i*POS9); ja umbauen.

      danch lieber LX entlasse ich die wieder aus meinem Knoten im Hirn.. -)

      1. Was ist POS9?

        Außerdem ist Deine Konstruktion etwas überflüssig, denn es gibt doch options.selectedIndex (liefert die Nummer der Option im Array zurück, die gerade ausgewählt ist):

        var P1p8 = document.getElementsByName('Person1_Pos8')[0];
        var value = P1p8.options[P1p8.options.selectedIndex].value;

        Das nur als Beispiel, umschreiben musst Du schon selbst :-)

        Gruß, LX

        1. Hi!

          Außerdem ist Deine Konstruktion etwas überflüssig, denn es gibt doch options.selectedIndex (liefert die Nummer der Option im Array zurück, die gerade ausgewählt ist):

          Stimmt. Das duerfte die bessere Variante sein, aber nur, wenn es sich nicht um eine Mehrfachauswahl handelt.

          --
          Schäme Dich nicht, wenn Du eine Antwort nicht verstehst und frag nochmal nach.