Seite 1 von 1
javascript radiobutton true false - Ich gegen Javascript
Verfasst: 19.06.2009, 08:02
von Deathcore
Hallo Zusammen, ich hab ein "formular" bzw. 2 radio buttons (true und false)
Mein Formular sieht zb. so aus:
Code: Alles auswählen
<form name="formular" action="finish.php" method="post" onSubmit="formularcheck()">
<input type="radio" name="1" value="true">true
<input type="radio" name="1" value="false">false
nun will, dass man nur auf die seite "finish.php" kommt wenn man true ankreuzt.
Es sollte beim Seitenaufruf noch nichts angekreuzt sein.
Wenn garnichts angekreuzt wird soll eine Meldung kommen (bitte ankreuzen...)
Wenn false angekreuzt wird (falsch angekreuzt!)
Bei true soll auf finish.php weitergeleitet werden.
Wie muß hier nun das Javascript aussehen? Wäre super wenn mir wer helfen könnte. Ich bin leider der absolute Javascript-Pfosten.
Bin für jede Hilfe dankbar.
Grüße, Stephan
Verfasst:
von
SEO Consulting bei
ABAKUS Internet Marketing Erfahrung seit 2002
- persönliche Betreuung
- individuelle Beratung
- kompetente Umsetzung
Jetzt anfragen:
0511 / 300325-0.
Re: javascript radiobutton true false - Ich gegen Javascrip
Verfasst: 19.06.2009, 08:11
von Beloe007
-selbst gelöscht-
Verfasst: 19.06.2009, 08:13
von Deathcore
dankeschön.... nach allen möglichen kombinationen hab ich gesucht... aber auf das naheliegendste nicht...
dankeschön
Verfasst: 19.06.2009, 08:18
von Beloe007
-selbst gelöscht-
Verfasst: 19.06.2009, 08:24
von Deathcore
soooo geht bei mir doch nicht
Hatte in meinem Post vergessen, dass es mehrere Fragen sind die mit true und false angekreuzt werden müssen.
Es sind z.b. 6 Fragen die jeweils angekreuzt werden müssen.
nur wenn ALLE mit true angekreuzt sind kommt die seite 1, bei falsch kommt seite 2, und falls etwas garnicht angekreuzt wird eine alert-werbung

Verfasst: 19.06.2009, 08:39
von Nullpointer
dann mußt du das in eine funktion auslagern:
onclick="checkSelection" das bei allen radiobuttons. und in eine js funktion:
Code: Alles auswählen
function checkSelection() {
if($('r1').checked && $('r2').checked && ...) {
location.href='test1.html';
else if(!$('r1').checked && !$('r2').checked &&) {
location.href='test2.html';
}
}
ach so, $('r1').checked wäre jetzt mit prototype (id="r1" ... in den radiobuttons vorausgesetzt.). ohne mußt du die radiobuttons anders identifizieren.
das ganze geht natürlich auch noch generischer, aber wenn du "nur" 6 hast frickel dir das erst mal so zurecht.
Verfasst: 19.06.2009, 10:17
von Mork vom Ork
Nullpointer hat geschrieben:ach so, $('r1').checked wäre jetzt mit prototype
Die IIRC über 100 KByte für Prototype wären etwas zu viel des Guten für sowas. Wie man Formularelemente direkt ausliest und dabei nur bummelig ein Tausendstel Platz braucht, ist
hier ausführlich beschrieben.
Verfasst: 19.06.2009, 13:21
von net(t)worker
ich hoffe du vergisst dabei nicht auch die serverseitige validierung der Daten... nicht jeder hat js aktiv...
Verfasst: 30.06.2009, 08:28
von Deathcore
soooo habs nun hingekriegt wie ich es brauche
Code: Alles auswählen
<script type="text/javascript">
function Weiter () {
if(document.form.name.value == "")
{
alert("Please enter name and the organization!");
document.form.name.focus();
return false;
}
if (document.form.nfpaa[2].checked && document.form.nfpab[3].checked && document.form.nfpac[2].checked && document.form.nfpad[3].checked && document.form.nfpae[1].checked && document.form.nfpaf[1].checked && document.form.nfpag[5].checked && document.form.nfpah[2].checked && document.form.nfpai[1].checked && document.form.nfpaj[1].checked && document.form.nfpak[0].checked== true) {
window.location.href = "nfpa_certificate.php?text=" + document.form.name.value;
} else {
alert("Sorry, your answeres are not correct");
}
}
</script>
- falls Name nicht eingegeben wird kommt ein Alert
- dann werden die Checkboxen "gechecked" ob Sie richtig sind. Falls ja wird auf die andere Seite weitergeleitet - falls nicht kommt die Sorry Meldung
Fragen:
1. ist es in javascript möglich, dass in dem "Sorry"-Fenster noch angezeigt wird wieviel richtig oder falsch ist
Also z.b. "Sorry, nur 60% richtig"
2. Ab 80% "Richtigkeit" sollte man auch schon auf die "nfpa_certificate.php?text=" Seite weitergeleitet werden
ich hasse es

Verfasst: 30.06.2009, 12:41
von Nullpointer
natürlich kannst du das im js berechnen*, aber dir ist schon klar, dass ich das mit einem blick in den quelltext anschauen und manuell abschicken kann?
warum machst du das per javascript und nicht serverseitig?
*) ich würde in einer for schleife über die checkboxen schleifen. bei jeder iteration kannst du dann für jede richtige antwort einen counter hochsetzen.
den counter wertest du dann am ende aus.
Verfasst: 08.07.2009, 14:52
von Deathcore
hab das perfekte teil für meinen gebrauch gefunden! Wollte ich euch nicht vorenthalten. Hat für meinen Zweck perfekt gepasst:
https://www.phptutorial.info/scripts/multiple_choice/