2

我使用jQuery Countdown为我的页面设置计时器倒计时。这是我的代码:

<script type="text/javascript">

  function timeup() {
    $("examination_form").submit();
  }

  $(document).ready(function() {
    var duration = <%= @remaining_minutes %>
    $('#countDownTimer').countdown({until: '+' + duration  + 'm', 
                    format: 'MS', 
                    description: "Time Remaining",
                    onExpiry: timeup
                      });

  $("#countDownTimer").jScroll({top: 100});

  $("#examination_form").submit(function() {
    var errors = []
    $(".content_question").each(function() {
      var answerCont = $(this).next();
      var inputs = $(answerCont).find('input[type=radio], input[type=checkbox]');

      if(inputs.length > 0)
      {
        var groupChecked = false;

        $(inputs).each(function(){
          if($(this).is(':checked'))
          {
            groupChecked = true;
          }
        });

        if(!groupChecked)
        {
          errors.push($(this).text().trim());
        }
      }
    });

    if(errors.length > 0)
    {
      var errorMessage = "You missed " + errors.length + " questions: \n\n";

      for(var i=0; i<errors.length; i++)
      {
        errorMessage += errors[i] + "\n";
      }
      alert(errorMessage);
      return false;
    }
  });
});
</script>

从头到尾的代码$("#examination_form").submit(function() {用于检查用户是否错过了某些问题的检查答案,当他们按下提交时会收到提醒。

我在超时时使用回调事件onExpiry提交表单,但它没有做任何事情。我认为它有问题,但我不知道在哪里。在我尝试之前:

onExpiry: function(){
  $("examination_form").trigger('click');
}

但这就像我按下按钮提交一样,而我希望提交表单。我尝试了这个问题的答案,但也没有用。

任何人都可以帮忙吗?

4

1 回答 1

0

要跳过表单验证并强制提交,unbind处理submit程序:

function timeup() {
    $("#examination_form").unbind().submit();
}
于 2012-12-28T18:45:36.853 回答