demande de quiz: vérifier les bonnes réponses

Je construis une application de quiz et je n'arrive pas à vérifier si les réponses des utilisateurs sont correctes. Le quiz contient 10 questions et utilise des boutons radio pour obtenir des réponses de l'utilisateur. Pour certaines questions, aucune des réponses n'est correcte, et pour certaines des autres questions, toutes les réponses sont correctes.

Chaque question a sa propre «questionClass», ainsi définie:

function questionClass (q, a1, a2, a3, a4, n, c) {
this.question = q;
this.answer1 = a1;
this.answer2 = a2;
this.answer3 = a3;
this.answer4 = a4;
this.number = n;
this.correct = c;

Chacune des classes de questions est créée avec la formule suivante:

var questionOne = new questionClass("quotation to be analyzed", 'answer1','answer2','answer3','answer4', number, 'correct');
questions.push(questionOne);

La fonction pour vérifier si oui ou non l'utilisateur a la bonne réponse est ici:

    this.checkAnswer=checkAnswer;
    function checkAnswer() {

    if ($('input:radio[name=" ' + this.number + ' "]:checked').val() == this.correct) {
        score++;
    }
    else if ($('input:radio[name=" ' + this.number + ' "]:checked').val() == this.correct) {
        score++;
    }
    else if ($('input[id=" ' + this.answer3 + ' "]:checked') && (this.answer3 == this.correct)) {
        score++;
    }
    else if ($('input[id=" ' + this.answer4 + ' "]:checked') && (this.answer4 == this.correct)) {
        score++;
    }
    else {
        console.log("you got the wrong answer");
    }

}

La fonction pour passer d'une question à l'autre est la suivante:

$("#continue").click(function(){
    counter++;

    if (counter == 1) {
        questions[x].display();
    }
    else if ((counter >= 1) && (counter <= 10)) {
        if (questions[x].isSelected()) {
            $('.warning').html("");
            questions[x].checkAnswer();
            $('.score').html("
Your score is " + score + " out of 10

"); x++; if (x < 10){ questions[x].display(); } } } else if ((counter >= 11) && (!questions[x].isSelected())) { return; } else { $('.warning').html(""); questions[x].checkAnswer(); $('.score').empty(); $('#container').html('

You scored ' + score + ' out of 10.

');
        $('#container').append('<input type="button" id="tryAgain" value="Try Again!">');

    }
});

L'application peut être consultée à ce lien:

http://dl.dropboxusercontent.com/u/91499081/QuizApp/quizApp.html

Fiddle http://jsfiddle.net/MCjna/

0
voici un jsfiddle avec tout mon code, bien que le bouton "continuer" ne fonctionne pas dedans, même si cela fonctionne sur la page d'application que j'ai liée ci-dessus. jsfiddle.net/thektulu/TrFmJ
ajouté l'auteur user2976607, source
un jsfiddle serait très utile
ajouté l'auteur Amine Hajyoussef, source
Prenez le code que vous avez dans le lien et placez-le dans jsfiddle.net où les autres peuvent jouer avec
ajouté l'auteur charlietfl, source