<html <script>> Quizz mit speziellen Anforderungen (Switch)

Fastel

Cadet 4th Year
Registriert
Aug. 2009
Beiträge
72
(html /<script>)

Hi, ich hoffe ich kann das Problem, das es zu lösen gilt einigermaßen verständlich machen. Kernfrage ist, ob man das Problem mit einem Switchcase lösen kann:

##################

Eine Aufgabe entspicht weitesgehend einem Quiz:
  • Es werden zwei Fragen gestellt, für die dann jeweils ein TextInput-Formular gegeben wird.
  • Jede Frage benötigt aber zwei Antworten (ebenfalls per Textfeld).
Also: => zwei Texteingabeformulare (1 und 2), bestehend aus jeweils zwei Eingabefeldern (a und b)

Das Script soll überprüfen ob der User die Fragen richtig beantwortet hat ( reicht erstmal als console.log als true/false).

Das wichtige ist aber, dass die Reihenfolge der Antworten egal ist. Es gibt also so gesehen keine Frage 1.) die einem bestimmten Formular zugeordnet ist, sondern der User kann jede Frage in jedem Formular beantworten. Die Frage MUSS aber „in sich“ zusammen passen.

Beispiel:
Eine Frage: „Nenne ein bellendes Tier und wieviel Beine hat es?“
Eine andere Frage: „Nenne erst eine rote und dann eine blaue Farbe“
=> der User hat zwei gleiche Eingabeformulare und kann sich aussuchen, wo er welche Frage beantwortet.

Die richtigen, gesuchten Antworten („Hund“ und „4“ sowie „rot“ und „blau“) werden als Variablen definiert.

Hund kann sowohl in Formular 1 als auch 2 eingetragen werden, allerdings immer nur als erste Antwort (a) innerhalb des Formulars.
Antwort (b) muss dann = 4 sein.


Oh man... verständlich?


Ich wollte das gerne mit einem Switchcase lösen: im Fall dass der
  • Input (a) = „Hund“ kommt ist, nur der Input (b) „4“ richtig
  • Input (a) = "rot" bedeutet in (b) ist "blau" richtig.

Wenn weder Hund noch rot eingegeben wird, kann ein default anspringen (der (a) und (b) = false ergibt).
Es muss zwangsläufig Hund oder rot in die Felder (a) eingetragen werden. Nur ein Feld (b) ausfüllen macht dann keinen Sinn später. Der Input in Textfeld (a) definiert also, welche weiteren Antworten als richtig gelten. Puuh...

Ich möchte gerne beide Formulare mit einem(!) onclickevent auswerten.



Ich habe es mal im Code probiert, vielleicht habt ihr da eine Idee und könnt es ggf gleich mal reinschreiben, dann kann ich es mir angucken.
ps: ja vor allem zeile 40 halt...
pps: In If/Else-Möglichkeiten habe ich mich noch nicht reingedacht und etwas Angst vor zu vielen Verschachtelungen. Später werden es pro Aufgabe 5 Fragen mit 4 Antwortteilen (also 5x4 fest definierten Antworten pro Aufgabe). Daher hoff(t)e ich auf eine elegante Switchcase Lösung.


HTML:
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
<!--Formular 1-->
<input type="text" id="input1_a"><br>
<input type="text" id="input1_b"><br>
<br><br>
<!--Formular 2-->
<input type="text" id="input2_a"><br>
<input type="text" id="input2_b"><br><br>

<!--beide Resultate sollen mit einem(!) Button kommen-->
<button onclick="submitFunction()">Submit</button>

    <script> //hier werden die Lösungen definiert und in Variablen gespeichertn
        function submitFunction() {
            var lösung1_a = "Hund";
            var lösung1_b = "4"

            var lösung2_a = "rot"
            var lösung2_b = "blau"
            // die Lösung 1_a und 1_b dürfen auch im Input 2_a und 2_b eigetragen werden.


            //Submits (userinput) als Variablen festhalten
            var submit1_a = document.getElementById("input1_a").value;
            var submit1_b = document.getElementById("input1_b").value;

            var submit2_a = document.getElementById("input2_a").value;
            var submit2_b = document.getElementById("input2_b").value;

/*!=>*/     switch ( **??**??** ) {
                //Wenn der input1_a = lösung1_a ist, dann wird überprüft, ob input1_b = Lösung 1_b
                case lösung1_a: console.log("Starte Version Hund mit 4 Beinen")

                    //variablen der Auswertung1(result) anlegen (Bools)
                    var result1_a = submit1_a == lösung1_a
                    var result1_b = submit1_b == lösung1_b
                    console.log("Ergebis Hund");
                    console.log(result1_a);
                    console.log(result1_b);
                    break;

                //Wenn der input1_a = lösung2_a ist, dann wird überprüft, ob input1_b = Lösung 2_b
                case lösung2_a: console.log("Starte Version Farbe")

                    // variablen der Auswertung2(result) anlegen
                    var result2_a = submit1_a == lösung2_a
                    var result2_b = submit1_b == lösung2_b
                    console.log("Ergebis Farbe");
                    console.log(result2_1);
                    console.log(result2_2);
                    break;
            }
        }
        // die Konsole sollte 4x true ausgeben wenn
        // - im ersten Formular Hund und 4 eingegeben wird und im zweiten rot und blau
        // oder
        // - im zweiten Formular Hund und 4 eingegeben wird und im ersten rot und blau
    </script>
</body>

</html>
 
function checkSolution erst aufs erste Feld dann aufs zweite Feld, wenn beide true passt es.

Bei mehr Feldern foreach, und sobald falsch: Abbruch
 
Sorry ich muss zugeben, dass ich die Antwort nicht verstehe. Wie gesagt bei mir ist noch sehr viel Halbwissen.
Ich weiß es ist viel verlange aber kannst Du mir das vielleicht als kleines Beispiel aufschreiben?
 
Ich habe jetzt einen Weg gefunden, der vielleicht auch deinem Vorschlag entspricht(?). Ist "leider" ein fast 400-Zeilen-Monster geworden mit viel copy&paste.
Wenn es eleganter geht hätte ich nichts dagegen :). Das Problem, , dass ich die gleiche Lösungen in mehrere (oder alle) Formulare eingeben kann habe ich umgangen, indem jeder switchcase, sobald aufgerufen, die ihm eigene Lösungsvariable ändert.

Ich kopier einfach mal den Code, falls jemand reingucken möchte. Die Antworten sind fest definiert (in Z53 bis Z76)

=> Ich habe jetzt das "setting" (Tier, Farbe) so geändert, dass es sich leichter erklären lässt:
Sagen wir, wir wollen die Daten (Name, Herkunft, Alter, Geschlecht) unserer Freunde abfragen. 5 Freunde also 5 Formulare. Jeder Freund kann in jedes Formular eingetragen werden. Aber das Alter von "hans" passt nicht zum Alter von "lis":confused_alt:


Javascript:
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <!-- Eingabeformulare anlegen -->
    <div>
        <h4>Formular 1</h4>
        <input type="text" id="inputForm1Top">Name<br>
        <input type="text" id="inputForm1Mid">Country<br>
        <input type="text" id="inputForm1Bot">Age<br>
        <input type="text" id="inputForm1Last">Sex
    </div><br>
    <div>
        <h4>Formular 2</h4>
        <input type="text" id="inputForm2Top">Name<br>
        <input type="text" id="inputForm2Mid">Country<br>
        <input type="text" id="inputForm2Bot">Age<br>
        <input type="text" id="inputForm2Last">Sex
    </div><br>
    <div>
        <h4>Formular 3</h4>
        <input type="text" id="inputForm3Top">Name<br>
        <input type="text" id="inputForm3Mid">Country<br>
        <input type="text" id="inputForm3Bot">Age<br>
        <input type="text" id="inputForm3Last">Sex
    </div><br>
    <div>
        <h4>Formular 4</h4>
        <input type="text" id="inputForm4Top">Name<br>
        <input type="text" id="inputForm4Mid">Country<br>
        <input type="text" id="inputForm4Bot">Age<br>
        <input type="text" id="inputForm4Last">Sex
    </div><br>
    <div>
        <h4>Formular 5</h4>
        <input type="text" id="inputForm5Top">Name<br>
        <input type="text" id="inputForm5Mid">Country<br>
        <input type="text" id="inputForm5Bot">Age<br>
        <input type="text" id="inputForm5Last">Sex
    </div><br>

    <button onclick="submit()">Check Solution</button>

    <script>

        // Solution ( A / B / C / D / E ):
        var solutionNameA = "tim";
        var solutionCountryA = "usa";
        var solutionAgeA = "18";
        var solutionSexA = "m"

        var solutionNameB = "hans";
        var solutionCountryB = "france";
        var solutionAgeB = "12";
        var solutionSexB = "m"

        var solutionNameC = "lis";
        var solutionCountryC = "spain";
        var solutionAgeC = "99";
        var solutionSexC = "f"

        var solutionNameD = "martin";
        var solutionCountryD = "germany";
        var solutionAgeD = "39";
        var solutionSexD = "m"

        var solutionNameE = "hanna";
        var solutionCountryE = "italy";
        var solutionAgeE = "21";
        var solutionSexE = "f"

        function submit() {
            // input => variable
            var inputForm1Top = document.getElementById("inputForm1Top").value
            var inputForm1Mid = document.getElementById("inputForm1Mid").value
            var inputForm1Bot = document.getElementById("inputForm1Bot").value
            var inputForm1Last = document.getElementById("inputForm1Last").value

            var inputForm2Top = document.getElementById("inputForm2Top").value
            var inputForm2Mid = document.getElementById("inputForm2Mid").value
            var inputForm2Bot = document.getElementById("inputForm2Bot").value
            var inputForm2Last = document.getElementById("inputForm2Last").value

            var inputForm3Top = document.getElementById("inputForm3Top").value
            var inputForm3Mid = document.getElementById("inputForm3Mid").value
            var inputForm3Bot = document.getElementById("inputForm3Bot").value
            var inputForm3Last = document.getElementById("inputForm3Last").value

            var inputForm4Top = document.getElementById("inputForm4Top").value
            var inputForm4Mid = document.getElementById("inputForm4Mid").value
            var inputForm4Bot = document.getElementById("inputForm4Bot").value
            var inputForm4Last = document.getElementById("inputForm4Last").value

            var inputForm5Top = document.getElementById("inputForm5Top").value
            var inputForm5Mid = document.getElementById("inputForm5Mid").value
            var inputForm5Bot = document.getElementById("inputForm5Bot").value
            var inputForm5Last = document.getElementById("inputForm5Last").value

            // Form 1
            switch (inputForm1Top) {
                case solutionNameA:
                    console.log(" ### Tims Formular ###");
                    var resultForm1Top = inputForm1Top == solutionNameA;
                    var resultForm1Mid = inputForm1Mid == solutionCountryA;
                    var resultForm1Bot = inputForm1Bot == solutionAgeA;
                    var resultForm1Last = inputForm1Last == solutionSexA;
                    console.log("Name = " + resultForm1Top);
                    console.log("Country = " + resultForm1Mid);
                    console.log("Age = " + resultForm1Bot);
                    console.log("Sex = " + resultForm1Last);
                    solutionNameA = "IAMADIRTYCHEATER";
                    break
                case solutionNameB: console.log(" ### Hans Formular ### ");
                    var resultForm1Top = inputForm1Top == solutionNameB;
                    var resultForm1Mid = inputForm1Mid == solutionCountryB;
                    var resultForm1Bot = inputForm1Bot == solutionAgeB;
                    var resultForm1Last = inputForm1Last == solutionSexB;
                    console.log("Name = " + resultForm1Top);
                    console.log("Country = " + resultForm1Mid);
                    console.log("Age = " + resultForm1Bot);
                    console.log("Sex = " + resultForm1Last);
                    solutionNameB = "IAMADIRTYCHEATER";
                    break
                case solutionNameC: console.log(" ### Lis Formular ### ");
                    var resultForm1Top = inputForm1Top == solutionNameC;
                    var resultForm1Mid = inputForm1Mid == solutionCountryC;
                    var resultForm1Bot = inputForm1Bot == solutionAgeC;
                    var resultForm1Last = inputForm1Last == solutionSexC;
                    console.log("Name = " + resultForm1Top);
                    console.log("Country = " + resultForm1Mid);
                    console.log("Age = " + resultForm1Bot);
                    console.log("Sex = " + resultForm1Last);
                    solutionNameC = "IAMADIRTYCHEATER";
                    break
                case solutionNameD: console.log(" ### Martins Formular ### ");
                    var resultForm1Top = inputForm1Top == solutionNameD;
                    var resultForm1Mid = inputForm1Mid == solutionCountryD;
                    var resultForm1Bot = inputForm1Bot == solutionAgeD;
                    var resultForm1Last = inputForm1Last == solutionSexD;
                    console.log("Name = " + resultForm1Top);
                    console.log("Country = " + resultForm1Mid);
                    console.log("Age = " + resultForm1Bot);
                    console.log("Sex = " + resultForm1Last);
                    solutionNameD = "IAMADIRTYCHEATER";
                    break
                case solutionNameE: console.log(" ### Hannas Formular ### ");
                    var resultForm1Top = inputForm1Top == solutionNameE;
                    var resultForm1Mid = inputForm1Mid == solutionCountryE;
                    var resultForm1Bot = inputForm1Bot == solutionAgeE;
                    var resultForm1Last = inputForm1Last == solutionSexE;
                    console.log("Name = " + resultForm1Top);
                    console.log("Country = " + resultForm1Mid);
                    console.log("Age = " + resultForm1Bot);
                    console.log("Sex = " + resultForm1Last);
                    solutionNameE = "IAMADIRTYCHEATER";
                    break
            }

            // Form 2
            switch (inputForm2Top) {
                case solutionNameA:
                    console.log(" ### Tims Formular ### ");
                    var resultForm2Top = inputForm2Top == solutionNameA;
                    var resultForm2Mid = inputForm2Mid == solutionCountryA;
                    var resultForm2Bot = inputForm2Bot == solutionAgeA;
                    var resultForm2Last = inputForm2Last == solutionSexA;
                    console.log("Name = " + resultForm2Top);
                    console.log("Country = " + resultForm2Mid);
                    console.log("Age = " + resultForm2Bot);
                    console.log("Sex = " + resultForm2Last);
                    solutionNameA = "IAMADIRTYCHEATER";
                    break
                case solutionNameB: console.log(" ### Hans Formular ### ");
                    var resultForm2Top = inputForm2Top == solutionNameB;
                    var resultForm2Mid = inputForm2Mid == solutionCountryB;
                    var resultForm2Bot = inputForm2Bot == solutionAgeB;
                    var resultForm2Last = inputForm2Last == solutionSexB;
                    console.log("Name = " + resultForm2Top);
                    console.log("Country = " + resultForm2Mid);
                    console.log("Age = " + resultForm2Bot);
                    console.log("Sex = " + resultForm2Last);
                    solutionNameB = "IAMADIRTYCHEATER";
                    break
                case solutionNameC: console.log(" ### Lis Formular ### ");
                    var resultForm2Top = inputForm2Top == solutionNameC;
                    var resultForm2Mid = inputForm2Mid == solutionCountryC;
                    var resultForm2Bot = inputForm2Bot == solutionAgeC;
                    var resultForm2Last = inputForm2Last == solutionSexC;
                    console.log("Name = " + resultForm2Top);
                    console.log("Country = " + resultForm2Mid);
                    console.log("Age = " + resultForm2Bot);
                    console.log("Sex = " + resultForm2Last);
                    solutionNameC = "IAMADIRTYCHEATER";
                    break
                case solutionNameD: console.log(" ### Martins Formular ### ");
                    var resultForm2Top = inputForm2Top == solutionNameD;
                    var resultForm2Mid = inputForm2Mid == solutionCountryD;
                    var resultForm2Bot = inputForm2Bot == solutionAgeD;
                    var resultForm2Last = inputForm2Last == solutionSexD;
                    console.log("Name = " + resultForm2Top);
                    console.log("Country = " + resultForm2Mid);
                    console.log("Age = " + resultForm2Bot);
                    console.log("Sex = " + resultForm2Last);
                    solutionNameD = "IAMADIRTYCHEATER";
                    break
                case solutionNameE: console.log(" ### Hannas Formular ### ");
                    var resultForm2Top = inputForm2Top == solutionNameE;
                    var resultForm2Mid = inputForm2Mid == solutionCountryE;
                    var resultForm2Bot = inputForm2Bot == solutionAgeE;
                    var resultForm2Last = inputForm2Last == solutionSexE;
                    console.log("Name = " + resultForm2Top);
                    console.log("Country = " + resultForm2Mid);
                    console.log("Age = " + resultForm2Bot);
                    console.log("Sex = " + resultForm2Last);
                    solutionNameE = "IAMADIRTYCHEATER";
                    break
            }

            // Form 3
            switch (inputForm3Top) {
                case solutionNameA:
                    console.log(" ### Tims Formular ### ");
                    var resultForm3Top = inputForm3Top == solutionNameA;
                    var resultForm3Mid = inputForm3Mid == solutionCountryA;
                    var resultForm3Bot = inputForm3Bot == solutionAgeA;
                    var resultForm3Last = inputForm3Last == solutionSexA;
                    console.log("Name = " + resultForm3Top);
                    console.log("Country = " + resultForm3Mid);
                    console.log("Age = " + resultForm3Bot);
                    console.log("Sex = " + resultForm3Last);
                    solutionNameA = "IAMADIRTYCHEATER";
                    break
                case solutionNameB: console.log(" ### Hans Formular ### ");
                    var resultForm3Top = inputForm3Top == solutionNameB;
                    var resultForm3Mid = inputForm3Mid == solutionCountryB;
                    var resultForm3Bot = inputForm3Bot == solutionAgeB;
                    var resultForm3Last = inputForm3Last == solutionSexB;
                    console.log("Name = " + resultForm3Top);
                    console.log("Country = " + resultForm3Mid);
                    console.log("Age = " + resultForm3Bot);
                    console.log("Sex = " + resultForm3Last);
                    solutionNameB = "IAMADIRTYCHEATER";
                    break
                case solutionNameC: console.log(" ### Lis Formular ### ");
                    var resultForm3Top = inputForm3Top == solutionNameC;
                    var resultForm3Mid = inputForm3Mid == solutionCountryC;
                    var resultForm3Bot = inputForm3Bot == solutionAgeC;
                    var resultForm3Last = inputForm3Last == solutionSexC;
                    console.log("Name = " + resultForm3Top);
                    console.log("Country = " + resultForm3Mid);
                    console.log("Age = " + resultForm3Bot);
                    console.log("Sex = " + resultForm3Last);
                    solutionNameC = "IAMADIRTYCHEATER";
                    break
                case solutionNameD: console.log(" ### Martins Formular ### ");
                    var resultForm3Top = inputForm3Top == solutionNameD;
                    var resultForm3Mid = inputForm3Mid == solutionCountryD;
                    var resultForm3Bot = inputForm3Bot == solutionAgeD;
                    var resultForm3Last = inputForm3Last == solutionSexD;
                    console.log("Name = " + resultForm3Top);
                    console.log("Country = " + resultForm3Mid);
                    console.log("Age = " + resultForm3Bot);
                    console.log("Sex = " + resultForm3Last);
                    solutionNameD = "IAMADIRTYCHEATER";
                    break
                case solutionNameE: console.log(" ### Hannas Formular ### ");
                    var resultForm3Top = inputForm3Top == solutionNameE;
                    var resultForm3Mid = inputForm3Mid == solutionCountryE;
                    var resultForm3Bot = inputForm3Bot == solutionAgeE;
                    var resultForm3Last = inputForm3Last == solutionSexE;
                    console.log("Name = " + resultForm3Top);
                    console.log("Country = " + resultForm3Mid);
                    console.log("Age = " + resultForm3Bot);
                    console.log("Sex = " + resultForm3Last);
                    solutionNameE = "IAMADIRTYCHEATER";
                    break
            }

            // Form 4
            switch (inputForm4Top) {
                case solutionNameA:
                    console.log(" ### Tims Formular ### ");
                    var resultForm4Top = inputForm4Top == solutionNameA;
                    var resultForm4Mid = inputForm4Mid == solutionCountryA;
                    var resultForm4Bot = inputForm4Bot == solutionAgeA;
                    var resultForm4Last = inputForm4Last == solutionSexA;
                    console.log("Name = " + resultForm4Top);
                    console.log("Country = " + resultForm4Mid);
                    console.log("Age = " + resultForm4Bot);
                    console.log("Sex = " + resultForm4Last);
                    solutionNameA = "IAMADIRTYCHEATER";
                    break
                case solutionNameB: console.log(" ### Hans Formular ### ");
                    var resultForm4Top = inputForm4Top == solutionNameB;
                    var resultForm4Mid = inputForm4Mid == solutionCountryB;
                    var resultForm4Bot = inputForm4Bot == solutionAgeB;
                    var resultForm4Last = inputForm4Last == solutionSexB;
                    console.log("Name = " + resultForm4Top);
                    console.log("Country = " + resultForm4Mid);
                    console.log("Age = " + resultForm4Bot);
                    console.log("Sex = " + resultForm4Last);
                    solutionNameB = "IAMADIRTYCHEATER";
                    break
                case solutionNameC: console.log(" ### Lis Formular ### ");
                    var resultForm4Top = inputForm4Top == solutionNameC;
                    var resultForm4Mid = inputForm4Mid == solutionCountryC;
                    var resultForm4Bot = inputForm4Bot == solutionAgeC;
                    var resultForm4Last = inputForm4Last == solutionSexC;
                    console.log("Name = " + resultForm4Top);
                    console.log("Country = " + resultForm4Mid);
                    console.log("Age = " + resultForm4Bot);
                    console.log("Sex = " + resultForm4Last);
                    solutionNameC = "IAMADIRTYCHEATER";
                    break
                case solutionNameD: console.log(" ### Martins Formular ### ");
                    var resultForm4Top = inputForm4Top == solutionNameD;
                    var resultForm4Mid = inputForm4Mid == solutionCountryD;
                    var resultForm4Bot = inputForm4Bot == solutionAgeD;
                    var resultForm4Last = inputForm4Last == solutionSexD;
                    console.log("Name = " + resultForm4Top);
                    console.log("Country = " + resultForm4Mid);
                    console.log("Age = " + resultForm4Bot);
                    console.log("Sex = " + resultForm4Last);
                    solutionNameD = "IAMADIRTYCHEATER";
                    break
                case solutionNameE: console.log(" ### Hannas Formular ### ");
                    var resultForm4Top = inputForm4Top == solutionNameE;
                    var resultForm4Mid = inputForm4Mid == solutionCountryE;
                    var resultForm4Bot = inputForm4Bot == solutionAgeE;
                    var resultForm4Last = inputForm4Last == solutionSexE;
                    console.log("Name = " + resultForm4Top);
                    console.log("Country = " + resultForm4Mid);
                    console.log("Age = " + resultForm4Bot);
                    console.log("Sex = " + resultForm4Last);
                    solutionNameE = "IAMADIRTYCHEATER";
                    break
            }

            // Form 5
            switch (inputForm5Top) {
                case solutionNameA:
                    console.log(" ### Tims Formular ### ");
                    var resultForm5Top = inputForm5Top == solutionNameA;
                    var resultForm5Mid = inputForm5Mid == solutionCountryA;
                    var resultForm5Bot = inputForm5Bot == solutionAgeA;
                    var resultForm5Last = inputForm5Last == solutionSexA;
                    console.log("Name = " + resultForm5Top);
                    console.log("Country = " + resultForm5Mid);
                    console.log("Age = " + resultForm5Bot);
                    console.log("Sex = " + resultForm5Last);
                    solutionNameA = "IAMADIRTYCHEATER";
                    break
                case solutionNameB: console.log(" ### Hans Formular ### ");
                    var resultForm5Top = inputForm5Top == solutionNameB;
                    var resultForm5Mid = inputForm5Mid == solutionCountryB;
                    var resultForm5Bot = inputForm5Bot == solutionAgeB;
                    var resultForm5Last = inputForm5Last == solutionSexB;
                    console.log("Name = " + resultForm5Top);
                    console.log("Country = " + resultForm5Mid);
                    console.log("Age = " + resultForm5Bot);
                    console.log("Sex = " + resultForm5Last);
                    solutionNameB = "IAMADIRTYCHEATER";
                    break
                case solutionNameC: console.log(" ### Lis Formular ### ");
                    var resultForm5Top = inputForm5Top == solutionNameC;
                    var resultForm5Mid = inputForm5Mid == solutionCountryC;
                    var resultForm5Bot = inputForm5Bot == solutionAgeC;
                    var resultForm5Last = inputForm5Last == solutionSexC;
                    console.log("Name = " + resultForm5Top);
                    console.log("Country = " + resultForm5Mid);
                    console.log("Age = " + resultForm5Bot);
                    console.log("Sex = " + resultForm5Last);
                    solutionNameC = "IAMADIRTYCHEATER";
                    break
                case solutionNameD: console.log(" ### Martins Formular ### ");
                    var resultForm5Top = inputForm5Top == solutionNameD;
                    var resultForm5Mid = inputForm5Mid == solutionCountryD;
                    var resultForm5Bot = inputForm5Bot == solutionAgeD;
                    var resultForm5Last = inputForm5Last == solutionSexD;
                    console.log("Name = " + resultForm5Top);
                    console.log("Country = " + resultForm5Mid);
                    console.log("Age = " + resultForm5Bot);
                    console.log("Sex = " + resultForm5Last);
                    solutionNameD = "IAMADIRTYCHEATER";
                    break
                case solutionNameE: console.log(" ### Hannas Formular ### ");
                    var resultForm5Top = inputForm5Top == solutionNameE;
                    var resultForm5Mid = inputForm5Mid == solutionCountryE;
                    var resultForm5Bot = inputForm5Bot == solutionAgeE;
                    var resultForm5Last = inputForm5Last == solutionSexE;
                    console.log("Name = " + resultForm5Top);
                    console.log("Country = " + resultForm5Mid);
                    console.log("Age = " + resultForm5Bot);
                    console.log("Sex = " + resultForm5Last);
                    solutionNameE = "IAMADIRTYCHEATER";
                    break
            }

        }

    </script>
</body>

</html>
 
Zuletzt bearbeitet:
Wenn das ein n-m Mapping ist, also n fragen im m Feldern beliebig verteilt sein können, dann lege die Felder als Array an und vergib immer denselben Namen. Also zb Name=“loesung[]”.
Dann landet die gesamte Liste der Lösungen da drin. Und du musst nur noch gucken dass alle erwarteten Lösungen vorhanden sind, zb ebenfalls als Array was sortiert ist, dann einfach 1:1 erwartet mit existiert vergleichen und wenn es ne Abweichung gibt dann ist das offensichtlich eine Falscheingabe.

Es sollte aber erwähnt werden, daß das schlechtes Design ist, auch im Hinblick auf Fragebögen als solches. Für Übungen okay, aber für Produktion gut überlegen.
 
Zurück
Oben