Script funktioniert nicht bei mehreren Fragen
Nadine
- javascript
Hallo!
Also, folgende Frage:
Ich habe diese Script erstellt, was eine Art Quiz darstellen soll. Mit einer Frage hat es auch
prima funktioniert. Nun das Problem: Ich weiß nicht, wie ich es dazu bringen soll, die "richtig/
falsch" Kontrolle auf mehrere Fragen anzuwenden. Ich habe schon erkannt, dass es v.a. an der Namensgebung
liegt. Aber: ich muß meinen Buttons ja unterschiedliche Namen geben, damit man nur einen pro Frage
ankreuzen kann. Wenn ich jedoch beim onClick-Button nur "function fragen()"schreibe, wird die
Funktion nicht ausgeführt.
Ich hoffe, ihr habt mein Problem verstanden und könnt mir helfen. Dankeschööööön!!!
<html>
<head>
<title>Test
</title>
<script type="text/javascript">
<!--
var anzahl= "0";
function fragen() {
if (document.test.antwort.checked == true) {
anzahl++;
}
alert("Sie haben von 2 Frage " + anzahl + " richtig beantwortet.");
anzahl = "0";
}
//-->
</script>
</head>
<body>
<form name="test">
<h1>Frage 1</h1>
<input type=radio name="antwort1" value="1">antwort
<input type=radio name="antwort1" value="2">antwort
<input type=radio name="antwort1" value="3">antwort
<h1>Frage 2</h1>
<input type=radio name="antwort2" value="1">antwort
<input type=radio name="antwort2" value="2">antwort
<input type=radio name="antwort2" value="3">antwort
<input type=button value="Ergebnis" onClick="fragen(document.test.antwort.value)">
</form>
</body>
</html>
Hallo Nadine,
function fragen() {
if (document.test.antwort.checked == true)
So klappt das nicht. Generell gilt für die Auswertung eines type=radio:
http://de.selfhtml.org/javascript/objekte/elements.htm#checked
Also:
if (document.test.antwort1[0].checked == true) oder
if (document.test.antwort1[1].checked == true) je nachdem, welchem Radiobutton die richtige Antwort zugewiesen ist.
Und weitere Fragen dann entsprechend
if (document.test.antwort2[0].checked == true) usw.
Grüße,
Jochen
hi,
Und weitere Fragen dann entsprechend
if (document.test.antwort2[0].checked == true) usw.
um aber nicht für jede frage eine eigene funktion schreiben zu müssen, empfiehlt es sich weiter oben auf der von dir bereits verlinkten seite auch noch http://de.selfhtml.org/javascript/objekte/elements.htm#allgemeines zu lesen.
für # kann man auch den namen einsetzen - den man einer allgemeingültigen funktion dann praktischerweise einfach als parameter übergibt.
gruß,
wahsaga