Hey!
Hab ein Skript geschrieben (hab im beispiel unten das drumrum mit doctype usw. weggelassen...), bekomm aber immer eine Fehlermeldung beim ausführen ("Fehler in Zeile 8, es wird ein ";" erwartet")
<html>
<head>
<script>
function checkprice()
Du kannst es dir einfacher und das skript flexibler machen, wenn du das Formular mitübergibst.
<form action=".." onsubmit="return checkprice(this);">
und dann:
function checkprice(f)
{
var name=document.form1.nachname.value, strasse=document.form1.strasse.value, plz-ort=document.form1.plz-ort.value;
Dadurch sparst du dir diese Würmer.
var name = f.nachname.value;
var strasse = f.strasse.value;
var plzort = f['plz-ort'].value;
var cnachname="",cstrasse="",cplz-ort="";
Das brauchst du nicht!
Nimme eine Variabel mit dem Namen 'fehler', das reicht für deine Zwecke.
var fehler = "";
int preis=0;
Fehler!
if (nachname=="")
var cnachname="Bitte geben Sie Ihren Namen an!\n";
if(!nachname) fehler += "Bitte geben Sie Ihren Namen an!\n";
if (strasse=="")
var cstrasse="Bitte geben Sie Ihre Adresse an!\n";
if(!strasse) fehler += "Bitte geben Sie Ihre Adresse an!\n";
if (plz-ort=="")
var cplz-ort="Bitte geben Sie Ort und Postleitzahl Ihres Wohnsitzes an!\n";
if(!plzort) fehler += "Bitte geben Sie Ort und Postleitzahl Ihres Wohnsitzes an!\n";
if(document.form1.buch[0].checked == true)
preis = preis + 25;
else if(document.form1.buch[1].checked == true)
preis = preis + 25;
else
alert("Bitte zumindest ein Buch auswaehlen!");
if(f.buch[0]) preis += 25;
else if(f.buch[1]) preis += 25;
else fehler += "Bitte zumindest ein Buch auswaehlen!");
if (cnachname!="" || cstrasse!="" || cplz-ort!="")
{
alert(cnachname+cstrasse+cplz-ort)
return false;
}
else
return true;
}
if(fehler) { alert(fehler); return false; }
return true;
</script>
- weiß wer, was die fehlermeldung auslöst - ich find nix!
Dein flaschen Namen (Minuszeichen)
- funktioniert das so, dass wenn jetzt keine der Checkboxen buch[0] oder buch[1] gecheckt sind, dass dann "Bitte zumindest ein Buch auswaehlen" kommt (bin mir nicht ganz sicher, ob das so richtig is)?
Sollte, ja.
- Rechnen in JavaScript: wie ihr seht, hab ich definiert:
int preis=0;
geht das so in JavaScript? Kann ich damit dann so rechnen wie weiter unten: preis = preis + 25; usw?!?
'int' gibz nicht. und genau wie in Java kannst du die Kurzform verwenden:
preis += 25;
- wie häng ich den Integer-Wert preis mit Strings Zusammen (es soll ja dann stehen "Das kostet 25 Euro". Funktioniert das so wie in Java, indem ich strings zusammenhänge: "Das kostet" + preis + "Euro" ?
Ja, genauso.
Struppi.