Мой вопрос прост, у меня есть несколько строк кода, которые должны подсчитывать мой общий балл при выборе правильного ввода. Тем не менее, я не могу показаться, чтобы получить счет быть ничего, кроме 0. Вот код:Почему моя функция не подсчет очков должным образом?
$(document).ready(main);
function main(){
$("input").hide();
$("h1").on('click', function(){
$('h1').css("background-color", "red")
});
var questions = [
{
question: "What is the capital of Washington?", choices: ["Salem", "Seattle",
"Helena", "Olympia"], correctanswer: "Olympia"
},
{
question: "How many countries are in Europe?", choices: ["15", "46", "27",
"51"], correctanswer: "51"
},
{
question: "What is the population of Mexico City?", choices: ["3.3 Million", "800 Thousand", "15.1 Million",
"8.9 Million"], correctanswer: "8.9 Million"
},
{
question: "Who is the current leader of Russia?", choices: ["Boris Yelstin", "Dmitry Medvedev",
"Nikolai Bulganin", "Vladimir Putin"], correctanswer: "Vladimir Putin"
},
{
question: "How large is the state of California?", choices: ["85,115 square miles", "130,919 square miles",
"215,355 sqaure miles", "163,696 square miles"], correctanswer: "163,696 square miles"
}
];
$("#start").on('click', function() {
$("#start").hide();
$("input").show();
quiz();
});
total=0;
number=0;
function quiz(){
$("#question").text(questions[number].question);
$("#answer1").text(questions[number].choices[0]);
$("#answer2").text(questions[number].choices[1]);
$("#answer3").text(questions[number].choices[2]);
$("#answer4").text(questions[number].choices[3]);
}
$("#submit").on('click', function(){
var chosen;
chosen = ($("input[name='choice']:checked").val());
if (chosen == questions[number].correctanswer) {
total++;
$("#score").text("Score: " + total);
} else {
$("#score").text("Score: " + total);
}
number++;
quiz();
});
}
.btns{height:50px; width:80px; background-color:blue;
}
#answers{
display: inline-block;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<h1>Simple Quiz</h1>
<div id="question"></div>
<div id=answers>
<input type="radio" name="choice" value="1"><label id="answer1"></label><br>
<input type="radio" name="choice" value="2"><label id="answer2"></label><br>
<input type="radio" name="choice" value="3"><label id="answer3"></label><br>
<input type="radio" name="choice" value="4"><label id="answer4"></label><br>
</div>
<div id="btns">
<button id="start">Start</button>
<button id="submit">Submit</button>
</div>
<div id="score"><p></p></div>
Так что это довольно просто, насколько код идет и мне это выглядит, как это должен работать, но явно не так, что любая помощь ценится. Благодаря! Вот git repository.
вы проверенную значение выбрано? – Mike
Используйте отладчик F12 для выполнения кода. Проверьте значения переменных в каждой строке. Какая переменная является средним значением для оценки или вы просто сохраняете непосредственно на странице? –