Hallo Leute, ich soll für Informatik ein Projekt vorstellen, und ich habe mir eine Art Eignungstest vorgestellt. Die Werte werden in diversen input type="radio" und select-Feldern eingegeben, die dann von der Funktion Kanal() ausgewertet werden.
Ich hatte mir das so gedacht, dass man einen bestimmten Punkt anklickt, worauf die Variable ein paar Punkte zugerechnet bzw. abgezogen bekommt. Der AM ENDE feststehende Wert soll als Grundlage für die Ausgabe dienen. Hier die Funktion:
"function Kanal()
{
var Punktzahl = 0 ; <- die Variable mit Anfangswert
if(document.Test.Geschlecht[0].checked==true) ; <- für die Antwort gibt's Punkte
{Punktzahl=Punktzahl+2} ;
if(document.Test.Geschlecht[1].checked==true) ; <- für diese allerdings nicht
{Punktzahl=Punktzahl-2} ;
if(Punktzahl<0)
{Ausgabe="Sie sind ungeeignet"} <- Auswertung u. Ausgabe
document.Test.Auswertung.value=Ausgabe ;
}"
Punktzahl wird allerdings zu keiner Zeit verändert, denn
"if(Punktzahl==0)
{Ausgabe="Sie sind ungeeignet"}"
funktioniert.
Wer kann mir helfen?
Homepage selbermachen 7.846 Themen, 35.563 Beiträge
Wie sieht denn dein Formular aus? In welchem Browser testest Du das? Nimm mal folgenden Code:
var Punktzahl=0;
function Kanal()
{
var opt1 = document.getElementsByName("Geschlecht")[0];
var opt2 = document.getElementsByName("Geschlecht")[1];
var res = document.getElementsByName("Auswertung")[0];
if( opt1.checked==true )
{
Punktzahl += 2;
}
else if( opt2.checked==true )
{
Punktzahl -= 2;
}
res.value = Punktzahl;
}
und folgendes Formular:
<form name="Test">
<input type="radio" name="Geschlecht" />
<input type="radio" name="Geschlecht" />
<input type="text" name="Auswertung" />
<input type="button" onclick="javascript:Kanal();" value="auswerten" />
</form>