0

我想做的事:
我正在尝试创建一个移动测验应用程序,它可以一个一个地以表格的形式显示问题列表。

我能做什么:
我已经阅读了这个网站,并且能够毫无问题地滚动浏览问题。此外,Javascript 评分引擎运行良好。

<script type="text/javascript">
  $(document).ready(function () {
    var currentQuestion=0;
    var totalQuestions=$('questions').size();   
    $questions = $('.questions');
    $questions.hide();
    $('.scorepage').hide();
    $($questions.get(currentQuestion)).fadeIn(); //show the first question
    // when users click on the "Next question button...
    $('#next').click(function(){
      $($questions.get(currentQuestion)).fadeOut(function(){ //hide the current question
        currentQuestion = currentQuestion + 1; //go to next question
        if(currentQuestion == totalQuestions){ //if no more question        
          $('.scorepage').show();
          $('.button1').hide();                         
        }else{      
          $($questions.get(currentQuestion)).show(); //else display the current question
        }
       });
     });
   });
</script>

我目前的程序结构是什么:

申请以 n 个问题的形式开始。每个问题都由 <div data-role="fieldcontain" class="questions">带有单选按钮输入的问题构成</div>

在这个问题之后,有一个按钮,点击它会调用getScore()javascript。此部分<div class="scorepage">在此处被框为按钮和显示 score 的文本框</div>

最后,导航按钮位于表单的末尾。它被框定为<div class ="button1"></div>

我的问题是什么?
在回答任何问题之前,分数页是隐藏的。这是由$('.scorepage').hide();. 但是,当没有更多问题时,我无法显示分数页,使用 $('.scorepage').show();隐藏下一个按钮(因为没有更多问题)$('.button1').hide();

谁能看出我的逻辑错误在哪里?

4

1 回答 1

0

要计算问题的数量,请尝试使用 jquery 函数 lenght 来计算元素:

var totalQuestions = $('.questions').length

他应该工作

于 2013-05-22T06:24:51.197 回答