peterS.: value von Radiobuttons nach der Verarbeitung undefined

Beitrag lesen

gruss Markus,

wieso ist in dem folgenden Quelltext nach dem Klick auf den Button die Variable mf undefined?

weil mf keine variable ist, die mit nur einem wert "value"
   belegt ist - mf haelt die gesamtheit aller radio-buttons
   mit dem namen "mf" in einem feld;
   deshalb musst Du in Deinem fall fuer die richtige anrede
   den radio-button ansprechen, dessen eigenschaft "checked"
   den wahrheitswert "true" zurueckgibt; das bekommst Du in
   mit einer schleife raus, die alle "[radio][i].checked"
   prueft und dann mit dem ermittelten index "i" den richtigen
   "[radio][i].value" in Deinen "Text"-string einbaut:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>

<head>
<script language="JavaScript">
<!--
function TextErstellen()
{
var mfElement = document.texteingabe.mf;
var Text = "Bitte wählen Sie eine Anredeform.";
for (var i=0;i<mfElement.length;i++)
 {
 if (mfElement[i].checked) {Text = ("Sehr geehrte" + mfElement[i].value + document.texteingabe.name.value);break;}
 }
document.texteingabe.ausgabe.value = Text;
}
//-->
</script>
</head>

<body>
<form name="texteingabe">
Herr<input type=radio name="mf" value="r Herr "><br>
Frau<input type=radio name="mf" value=" Frau "><br>
Name:<input type="Text" name="name"><br>
<input type="button" value="Text erstellen" onclick="TextErstellen()"><br>
<textarea name="ausgabe" cols="80" rows="5"></textarea>
</form>
</body>

</html>

by(t)e by(t)e - peterS. - pseliger@gmx.net