Value von Radio-Element auslesen..

Mik3e

Erfahrenes Mitglied
Hi zusammen,

Also entweder ich steh im Moment voll auf der Leitung, ich bin überarbeitet oder einfach nur dämlich :)

Ich habe zwei Radios (Array) und möchte testweise über einen Alert den gewählten Wert ausgeben.

Allerdings kann er das Element nicht finden (undefined)!?
Hier die Kurzfassung:

HTML:
<input name="forceAssignPriceClassToCustomers"type="radio" value="0" checked="checked" />
<input name="forceAssignPriceClassToCustomers"type="radio" value="1" />
<input type="button" name="Submit" value="Testausgabe" onclick="alert(document.getElementsByName('forceAssignPriceClassToCustomers').value);"/>

Habe es auch schon mit dem (eigentlich korrekten) einbetten in ein Form versucht -> Klappt ebenfalls nicht. Ich krieg hier echt gleich nen Rappel ;)

Danke für jeden Tipp,
Ciao,
Mike
 
Hi,

die Methode getElementsByName liefert eine Kollektion (Array) aller Elemente mit dem
angegebenen Namen zurück. Diese Kollektion musst du durchlaufen und prüfen, ob das jeweils
aktuelle Element gewählt (checked) wurde. Wurde ein gewähltes Element gefunden, kannst du
seinen Wert ausgeben.
Code:
function testRadio(){
  // Kollektion durchlaufen
  for(var i=0; i<document.getElementsByName('forceAssignPriceClassToCustomers').length; i++){
    // Falls das aktuelle Element gewählt wurde
    if(document.getElementsByName('forceAssignPriceClassToCustomers')[i].checked == true)
      // Wert ausgeben
      alert(document.getElementsByName('forceAssignPriceClassToCustomers')[i].value);
  }
}
Aufgerufen wird die Funktion im onclick-Event
HTML:
<input type="button" name="Submit" value="Testausgabe" onclick="testRadio();"/>
Ciao
Quaese
 
Hi,

Ja, diese Variante kenne ich..
Aber ich muss doch den Value des Radio-inputs ganz normal über die .value eigenschaft auslesen können..

Also z.B.:
alert(form.feldname.value);

getElementsByName war nur ein neuer Versuch um das Problem anders anzugehen...

LG
Mike
 
Hi,

ich kenne nur die Variante, die Werte zu Radiobutton-Gruppen über den Index der Einzelelemente
auszulesen. Ich lasse mich aber gerne eines besseren belehren.

Ciao
Quaese
 
Hi,

Habs jetzt mit deiner Schleifen-Lösung umgesetzt...
Dachte es würde noch anders gehen. Vielleicht hat ja jemand eine Idee. Performancetechnisch ist diese Lösung nicht wirklich optimal.

Ciao,
Mike
 

Neue Beiträge

Zurück