Netscape ignoriert Checkbox-Abfrage
Gerhard Girschweiler
- javascript
Untenstehendes Script fragt einige Felder eines Formulars ab, ob sie ausgefüllt sind. Wenn nicht, erscheint eine Alertbox mit dem entsprechenden Text zur Eingbeaufforderung. Es funktioniert alles wunderbar ausser einer Ausnahme: Der Netscape ignoriert die Checkbox-Abfrage (Formular.agb). Warum?
Danke für sachdienliche Hinweise.
<script language="JavaScript"><!--
function chkFormular()
{
if(document.Formular.Nachname.value == "")
{
alert("Bitte geben Sie Ihren Namen ein!");
document.Formular.Name.focus();
return false;
}
if(document.Formular.Vorname.value == "")
{
alert("Bitte geben Sie Ihren Vornamen ein!");
document.Formular.Vorname.focus();
return false;
}
if(document.Formular.StrasseNr.value == "")
{
alert("Bitte geben sie Ihre Strasse/Nr. ein!");
document.Formular.StrasseNr.focus();
return false;
}
if(document.Formular.PLZOrt.value == "")
{
alert("Bitte geben Sie PLZ/Ort ein!");
document.Formular.PLZOrt.focus();
return false;
}
if(document.Formular.Tel.value == "")
{
alert("Bitte geben Sie Ihre Tel.-Nr. ein!");
document.Formular.Tel.focus();
return false;
}
if(document.Formular.EMail.value.indexOf('@') == -1)
{
alert("Keine gültige E-Mail-Adresse!");
document.Formular.EMail.focus();
return false;
}
if(Formular.agb.checked ==false)
{
alert("Bitte klicken Sie ins Feld 'Ja'. Damit akzeptieren Sie die Geschäftsbedingungen.");
document.Formular.agb.focus();
return false;
}
}
// -->
</script>
Hallo,
du hast zwar gemailt, du hättest die Zeile eingefügt, hast du aber doch gar nicht!
nicht agb.checked, sondern agb[0].checked für die erste Checkbox und agb[1] für die zweite
und im HTML-Code
<input type=checkbox name="agb" value="x">
<input type=checkbox name="agb" value="y">
les die mal genau durch, wie es in selfhtml steht:
<../../tecbbda.htm#a2>
Dass das der IE durchgehen lässt, ist eher das Verwunderliche!
Gruß
Franz
Hallo,
also habe etwas rumprobiert.
Das Problem ist, dass du wie gemailt nur _eine_ Checkbox hast.
Bei nur einer Checkbox gehts tatsächlich nicht wie von mir beschrieben also über agb[0]. Sowohl im IE5 als auch NS 4.72 nicht.
Aber folgendes funktioniert, obwohl es nicht ganz korrekt scheint.
document.formularname.elements['agb']checked == false
und
document.formularname.agb.checked == false
(Warum letzteres bei dir nicht geht, weiss ich auch nicht, vielleicht andere Browserversionen, habe nur mit den neuesten Versionen getestet unter Win)
Im Archiv habe ich auch nix weiteres dazu gefunden.
Meine Erklärung wäre, daß eben bei nur einer Checkbox kein Array angelegt wird über das man dann die einzelnen Checkboxen der Gruppe ansprechen kann.
Aber vielleicht versteh ich ja auch nur was falsch.
Gruß
Franz