if-Abfrage

pflaume

New member
Hallo zusammen,
ich mache gerade meine ersten Versuche im Javascript und hatte gleich mal angefangen mit if-Abfragen und hab ein kleines Programm geschrieben, aber irgendwie will es nicht.
Hier ist der Quelltext:

PHP:
<HTML>

<HEAD>

<TITLE>If-Abfrage</TITLE>

<SCRIPT language="JavaScript">

    function lala1() {

    var x = document.form.eingabe.value

    if (x=="2"||x=="4"||x=="6"||x=="8"||x=="10"||x=="12"||x=="14"||x=="16"||x=="18"||x=="20"||x=="22"||x=="24"||x=="26"||x=="28"||x=="30"||x=="32"||x=="34"||x=="36"||x=="38"||x=="40"||x=="42"||x=="44"||x=="46"||x=="48"||x=="50"||x=="52"||x=="54"||x=="56"||x=="58"||x=="60"||x=="62"||x=="64"||x=="66"||x=="68"||x=="70"||x=="72"||x=="74"||x=="76"||x=="78"||x=="80"||x=="82"||x=="84"||x=="86"||x=="88"||x=="90"||x=="92"||x=="94"||x=="96"||x=="98") document.form.ausgabe.value="Die Zahl ist gerade"

    if (x=="1"||x=="3"||x=="5"||x=="7"||x=="9"||x=="11"||x=="13"||x=="15"||x=="17"||x=="19"||x=="21"||x=="23"||x=="25"||x=="27"||x=="29"||x=="31"||x=="33"||x=="35"||x=="37"||x=="39"||x=="41"||x=="43"||x=="45"||x=="47"||x=="49"||x=="51"||x=="53"||x=="55"||x=="57"||x=="59"||x=="61"||x=="63"||x=="65"||x=="67"||x=="69"||x=="71"||x=="73"||x=="75"||x=="77"||x=="79"||x=="81"||x=="83"||x=="85"||x=="87"||x=="89"||x=="91"||x=="93"||x=="95"||x=="97"||x=="99") document.form.ausgabe.value="Die Zahl ist ungerade"

}
</script>

<SCRIPT language="JavaScript">

    function lala2() {

    var x = document.form.eingabe.value

    if (x > 100) document.form.ausgabe.value="Eine Zahl von 1 bis 100 bitte!"


}

</SCRIPT>

</HEAD>

<BODY>

    <FORM name=form>

    <P> Eingabe: <INPUT TYPE=text NAME=eingabe VALUE="" SIZE="30">

    Gib eine Zahl von 1 bis 100 ein!
<P><INPUT TYPE=button NAME=Absenden VALUE="Ist die Zahl gerade oder ungerade ?" onclick="lala1()" onClick="lala2()" size="30">

    <P>Ausgabe: <INPUT TYPE=text NAME=ausgabe VALUE="" SIZE=30>

    </FORM>

</BODY>

</HTML>

Es soll eigentlich so funktionieren das man eine Zahl von 1 bis 100 eingeben soll und dann bestimmt wird ob sie gerade oder ungerade ist. der teil klappt auch noch aber ich wollte als zusatz nch haben das wenn man eine Zahl über 100 eingibt das dann gesagt wird das man nur eine zahl von 1 bis 100 eingeben soll!

VIelen dank schonmal für eure Hilfe.
Gruß Robert

[edit=Albu]PHP Tags eingefügt[/edit]
 
Zuletzt bearbeitet von einem Moderator:
Hi!

Beispiel:
PHP:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>If-Abfrage</title>
<script type="text/javascript">
<!--
function lala() {
var x = parseInt(document.form.eingabe.value);
if (x > 100||x<1||isNaN(x)||x!=Number(document.form.eingabe.value)){
document.form.ausgabe.value="Eine Ganzzahl von 1 bis 100 bitte!";
document.form.eingabe.value='';
document.form.eingabe.focus();
return false;
}
if(x%2==0)document.form.ausgabe.value="Die Zahl ist gerade";
else document.form.ausgabe.value="Die Zahl ist ungerade";
}
//-->
</script>
</head>
<body>
<form name="form">
<p> Eingabe: <input type="text" name="eingabe" value="" size="30">
Gib eine Ganzzahl von 1 bis 100 ein!</p>
<p><input type="button" name="Absenden" value="Ist die Zahl gerade oder ungerade ?" onclick="lala()" size="30"></p>
<p>Ausgabe: <input type="text" name="ausgabe" value="" size="30"></p>
</form>
</body>
</html>
Ahoi - Pit
 
HTML:
<SCRIPT language="JavaScript">

    function lala1() {

    var x = document.form.eingabe.value

    if (x=="2"||x=="4"||x=="6"||x=="8"||x=="10"||x=="12"||x=="14"||x=="16"||x=="18"||x=="20"||x=="22"||x=="24"||x=="26"||x=="28"||x=="30"||x=="32"||x=="34"||x=="36"||x=="38"||x=="40"||x=="42"||x=="44"||x=="46"||x=="48"||x=="50"||x=="52"||x=="54"||x=="56"||x=="58"||x=="60"||x=="62"||x=="64"||x=="66"||x=="68"||x=="70"||x=="72"||x=="74"||x=="76"||x=="78"||x=="80"||x=="82"||x=="84"||x=="86"||x=="88"||x=="90"||x=="92"||x=="94"||x=="96"||x=="98") document.form.ausgabe.value="Die Zahl ist gerade"

    if (x=="1"||x=="3"||x=="5"||x=="7"||x=="9"||x=="11"||x=="13"||x=="15"||x=="17"||x=="19"||x=="21"||x=="23"||x=="25"||x=="27"||x=="29"||x=="31"||x=="33"||x=="35"||x=="37"||x=="39"||x=="41"||x=="43"||x=="45"||x=="47"||x=="49"||x=="51"||x=="53"||x=="55"||x=="57"||x=="59"||x=="61"||x=="63"||x=="65"||x=="67"||x=="69"||x=="71"||x=="73"||x=="75"||x=="77"||x=="79"||x=="81"||x=="83"||x=="85"||x=="87"||x=="89"||x=="91"||x=="93"||x=="95"||x=="97"||x=="99") document.form.ausgabe.value="Die Zahl ist ungerade"

lala2()
}

   function lala2() {

    var x = document.form.eingabe.value

    if (x > 100) document.form.ausgabe.value="Eine Zahl von 1 bis 100 bitte!"


}
</script>

und nimm mal d´das onClick="lala2()" aus der Anweisung, das wird jetzt am ende der ersten Funktion ausgeführt, außerdem bei zwei funktionen macht man das so
onCLick="function1(); function2();"
 
Vielen Dank für die schnellen Antworten.
Das erste find ich etwas komplizier, das 2. versteh ich mehr aber trotzdem danke!
 
ich hab eine Frage zu der 1. Antwort.
Also bei mir klappt alles wunderbar ich hab es etwas umgeschrieben, aber warum muss das "%" sein und nicht "/" in der if zeile? weil es soll doch eigentlich bedeuten das die Zahl durch 2 teilbar ist.

kannst du mir diesen Teil nochmal erklären: if(x%2==0)


Danke
Gruß Robert
 
Zurück
Oben