• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

[FRAGE] Zuordnung einer Weiterleitung zu einem bestimmten Zahlenbereich

Darkronion

New member
Liebe User der jswelt,

ich bin ein Neuling in der Javascript Welt und schon bei den ersten anspruchsvolleren Versuchen aufgeschmissen.
Ich möchte eine Script erstellen was den Besucher auf Verschiedene Unterseiten weiterleitet. Diese Weiterleitung soll mithilfe eines Buttons geschehen der eine zuvor, in einem Textfeld, eingegebene Zahl überprüft und dann anhand des Wertes entscheidet auf welche Seite verlinkt werden soll.

Beispielsweise gebe ich die Schlagkraft eines imaginären Schlages in das Feld ein und wenn der Wert zwischen 0-5 liegt wird der User auf Seite eins weitergeleitet. Wenn der Schlag zwischen 5-10 liegt auf Seite zwei usw.

Ich habe Versucht das ganze mithilfe von if und else zu verwirklichen leider scheitere ich bereits bei der ersten Zuordnung was meines Erachtens an den Variablen und dem Script an sich liegen könnte.

Hier mein Script:

Code:
<script language="javascript" type="text/javascript">
		function Schlag (Schlagkraft)
{		
		var SchlagKraft ;
		var Ende1 = 20;
		var Ende2 = 0;
	
if (Schlagkraft > 5)
{
	this.location.href="schlag1.html";
}
 
 
if (5 < Schlagkraft > 10)
{
  this.location.href="Schlag2.html";
}
else                                      
{
  this.location.href="schlag3.html";

}
}
		</script>

sowie der Button:
Code:
<p>HOME</p>
				  
					<form name="KraftForm" action="">
					<pre>
Schlagkraft: <input type="text" name="Schlagkraft"></pre>
<p>Kommabetrag mit Punkt eingeben!</p>
<input type="button" value="Schlag!"onclick="Schlag(document.KraftFormular.Eingabekraft.value)">
</form>

Ich weiß das der Code nichts halbes und nichts ganzes ist, deswegen möchte ich hier um Hilfe fragen um meine Laien haften Versuche funktionstüchtig zu machen!

Ich bedanke mich im Voraus
Darkronion
 
Zuletzt bearbeitet:
Da steht bei dir etwas in der Fehlerkonsole... das <input> heißt "Schlagkraft" und nicht "Eingabekraft"... aber ich würde ja das <form> komplett entfernen, da es komplett nutzlos ist, dem <input> eine ID geben und dann mit document.getElementById() darauf zugreifen.

Du hast aber noch ein Problem mit deinen Vergleichen. JS versteht Verkettungen von Ungleichungen anders als du (wobei deine Verkettung auch bei der "normalen" Interpretation falsch ist...):
Code:
alert(1 < 10 < 3);
es wird zuerst die erste Ungleichung ausgewertet --> true. Das Ergebnis wird jetzt mit 3 verglichen und true wird als 1 interpretiert --> wieder true.

Du musst solche Ketten in Einzelschritte unterteilen und mit einem logischen UND (&&) verknüpfen:
Code:
var a = 10;
alert(1 < a && a < 3);

PS: das language-Attribut ist veraltet -> weg damit.
PPS: Funktionsparameter müssen nicht extra mit einem var-Statement lokal gemacht werden.
 
Stimmt - hatte ich gar nicht gesehen. Aber SchlagKraft wird gar nicht verwendet... genauso wie Ende1 und Ende2.
 
Zurück
Oben