この質問が以前に尋ねられたことは知っていますが、これを正しく理解できないようです。常に未定義のエラーを返します。
var currentAnswers = $('input[name="ans"]:checked').map(function() {
return this.value;
}).get();
$(document).ready (function () {
///
var answers =
[["Fee","Fi","Fo"],
["La","Dee","Da"]],
questions =
["Fee-ing?",
"La-ing?"],
corAns = ["Fee", "La"];
var counter = 0;
var $facts = $('#main_ .facts_div'),
$question = $facts.find('.question'),
$ul = $facts.find('ul'),
$btn = $('.myBtn');
$btn.on('click', function() {
if (counter < questions.length) {
$question.text(questions[counter]);
var ansstring = $.map(answers[counter], function(value) {
return '<li><input type="radio" name="ans" value="0"/>'
+ value + '</li>'}).join('');
$ul.html(ansstring);
var currentAnswers = $('input[name="ans"]:checked').map(function() {
return this.val();
}).get();
var correct = 0;
if (currentAnswers[counter]==corAns[counter]) {
correct++;
}
}
else {
$facts.text('You are done with the quiz ' + correct);
$(this).hide();
}
counter++;
});
//
});
かなり長いです。私は何が間違っているのか分かりません。
<div id="main_">
<div class="facts_div">
<span class="question"></span>
<ul></ul>
</div>
<div id = "next_button">
<form>
<input id="x" type="button" class="myBtn" value="Press Me">
</form>
</div>
</div>
</div>
私は答えがばかげているような気がします。宣言されていない変数か何かのようですが、わかりません。私は混乱しています。