Hey there, I'm still pretty new to JavaScript and finding W3 Schools a bit overwhelming. Could someone please guide me on how to increment the score by 1 if getanswer1 is equal to answer[0]?
I've watched countless tutorials on creating quizzes, but they all seem to skip over explaining the concepts behind the code. It's not very helpful at all.
HTML
<h2 id="numberofquestions"></h2>
<h3 id="q1"></h3>
<form class="answers" name="question1form">
<input type="radio" onclick = "getAnswers()" value="a" name="question1"><label class="pAnswers">a) .</label>
<input type="radio" onclick = "getAnswers()" value="b" name="question1"><label class="pAnswers">b) .</label>
<input type="radio" onclick = "getAnswers()" value="c" name="question1"><label class="pAnswers">c) .</label>
<input type="radio" onclick = "getAnswers()" value="d" name="question1"><label class="pAnswers">d) .</label>
</form>
<h3 id="q2"></h3>
<form class="answers" name="question2form">
<input type="radio" onclick = "getAnswers()" value="a" name="question2"><label class="pAnswers">a) .</label>
<input type="radio" onclick = "getAnswers()" value="b" name="question2"><label class="pAnswers">b) .</label>
<input type="radio" onclick = "getAnswers()" value="c" name="question2"><label class="pAnswers">c) .</label>
<input type="radio" onclick = "getAnswers()" value="d" name="question2"><label class="pAnswers">d) .</label>
</form>
Javascript
console.log("Yay, JS is linked and working!" +
" P.S. 42!");
var noOfQuestions = 10;
var score = 0;
var questions = ["question 1", "question 2", "question 3", "question 4", "question 5", "question 6", "question 7", "question 8", "question 9", "question 10"];
var answer = ['a', 'b', 'c', 'd', 'a', 'b', 'c', 'd', 'a', 'b'];
document.getElementById('numberofquestions').innerHTML = ("This quiz consists of ") + noOfQuestions + (" questions. Please make sure to answer all of them.");
function displayQuestions() {
document.getElementById('q1').innerHTML = questions[0];
document.getElementById('q2').innerHTML = questions[1];
document.getElementById('q3').innerHTML = questions[2];
document.getElementById('q4').innerHTML = questions[3];
document.getElementById('q5').innerHTML = questions[4];
document.getElementById('q6').innerHTML = questions[5];
document.getElementById('q7').innerHTML = questions[6];
document.getElementById('q8').innerHTML = questions[7];
document.getElementById('q9').innerHTML = questions[8];
document.getElementById('q10').innerHTML = questions[9];
}
// If input equals answer [letter], then add to score
function getAnswers() {
var getAnswer1 = document.getElementsByName('question1');
var getAnswer2 = document.getElementsByName('question2');
var getAnswer3 = document.getElementsByName('question3');
var getAnswer4 = document.getElementsByName('question4');
var getAnswer5 = document.getElementsByName('question5');
if ( getAnswer1.radioValue ('a')) {
// radio == answer[0] then ++1 score else do nothing
// $.inArray( getAnswer1, [answer[0]] );
}
}
Thank you for any assistance!