我想知道为什么我的错误值。
$( document ).ready(function() {
// Return a question
function show_question(id, answer) {
// Check if the answer is correct
$('.check_answer_' + id).click(function() {
alert(id);
if($('#quiz_answer_q' + id + '_a' + answer).is(':checked')) {
$('.quiz_confirmation_wrong').hide();
$('.explanation_q'+ id +', .next_question_'+ id +', .quiz_confirmation_correct').show('clip');
$(this).css({ 'pointer-events' : 'none', 'opacity': 0.5 })
}
else {
$('.quiz_confirmation_correct').hide();
$('.quiz_confirmation_wrong').show('clip');
}
});
// Go to next question
$('.next_question_'+ id).click(function() {
if($('#quiz_answer_q'+ id +'_a'+ answer).is(':checked')) {
var i = id;
i++;
$('.quiz_confirmation').hide();
$('.quiz_field_'+ id).hide();
$('#q'+ i++ +', .check_answer_'+ i++).show('bounce', 1000);
}
});
}
show_question(1, 1);
show_question(2, 2);
});
正如您在我的代码底部看到的,我使用不同的参数运行代码两次。第一次alert(id)
返回 1 ,这是正确的。第二次返回 3 ,当需要 2 时,我用第一个参数指定它。那么为什么它会返回3而不是2?
更新
答案 0 :(得分:1)
这是打印写。你正在递减错误,请在你按下一个按钮时增加一次。
$('#q'+ i +', .check_answer_'+ i++).show('bounce', 1000);