Hallo allerseits,
ich habe ein Kontaktformular, bei dem via java-script überprüft wird, ob alle Voraussetzungen zum Absenden der Nachricht erfüllt sind.
function eingaben_ueberpruefen()
{…
Dies möchte ich gerne um eine Funktion erweitern:
Der Absender der Nachricht soll eine oder mehrere Checkboxen markieren müssen, bevor die Nachricht gesendet wird.
Frage: Wie sieht der Java-skript-Befehl zum auswerten aus?
Angenommen ich habe zwei Checkboxen in meinem Formular…:
Ich habe schon einigen java-skrip-Kram ausprobiert (obwohl ich gar keine Ahnung von dem Thema habe).
Ich bin jetzt bei einer Variante die folgendermaßen aussieht und vllt. schon nahe am Ergebnis ist:
function eingaben_ueberpruefen()
{
for (i=0;i<document.getElementsByName(‚sprache[]‘)[i].length;i++) {
else if ((!document.getElementsByName(‚sprache[]‘)[i].checked == true){
alert(„bitte mindestens eine Sprache auswählen“)
return false;
}}
}
Klappt aber nicht.
Kann mir jemand helfen? Es darf gerne auch der ganze java-Code verschrottet werden…
Vielen Dank,
David
Frage: Wie sieht der Java-skript-Befehl zum auswerten aus?
Was willst du auswerten?
Was soll im positiven Fall geschehen?
else if ((!document.getElementsByName(‚sprache[]‘)[i].checked
== true){
alert(„bitte mindestens eine Sprache auswählen“)
return false;
}
Du musst auch bei nur einem Kreuz die Funktion positiv beenden.
Und wozu hast du die [] ? Mein Vorschlag:
var sprachen='';
...
for ... with (document.getElementsByName('sprache')) {
if ((checked)
sprachen=sprachen + value + ',';
} //for
if (sprachen\>'') return true;
else { alert("bitte mindestens eine Sprache auswählen");
sprachen='';
return false; }
Sorry,
das raff ich noch nicht. Wie gesagt, ich habe nicht wirklich den Plan von java script.
Folgendermaßen sieht meine eingaben_ueberpruefen Funktion derzeit aus und das läuft auch alles:
function eingaben_ueberpruefen()
{
var mail = document.Formular.email.value;
if ((mail.length < 5 || mail.indexOf (’@’,0) == -1 || mail.indexOf (’.’,0) == -1)&&(document.Formular.telefon.value.length < 6)){
alert(„Indice um número válido de telefone ou o seu contacto de e-mail, por favor!“)
document.Formular.email.select();
return false;
}
else if (document.Formular.objekt.value.length < 5) { // Objektname 5 Zeichen
alert(„Especifique a casa de férias desejada, por favor!“)
document.Formular.objekt.focus();
return false;
}
else if (document.Formular.anreise.value.length < 5) {
alert(„Indice a data de chegada, por favor! (dd.mm.aa)“)
document.Formular.objekt.focus();
return false;
}
else if (document.Formular.abreise.value.length < 5) {
alert(„Indice a data de partida, por favor! (dd.mm.aa)“)
document.Formular.objekt.focus();
return false;
}
else
return true;
}
Was ich genau überprüfen will, ist ob mindestens eine checkbox aus dem array sprache[] angeklickt wurde.
Vielen Dank für deine Hilfe.
mfg,
David
PS. Was soll zwischen den von dir gesetzten Punkten (…) geschehen?