表格不会按时自动提交

时间:2018-03-22 07:50:17

标签: javascript jquery html

我正在制作一个测验模块,如果超过时限,即30分钟,测验必须自动提交。我已经使用了jquery,但不知怎的,测验在时间限制达到时没有自动提交。我可以知道我哪里错了。对此的任何见解都将非常有帮助。以下是我的代码段

function get15dayFromNow() {   

   return new Date(new Date().valueOf() + <?php echo $duration ; ?> * 60 * 1000);

       }

   var $time_spend = $('#time_spend');
  $time_spend.countdown(get15dayFromNow(), function(event) {
    $(this).val(event.strftime('%M:%S'));
  });

  var $clock = $('#clock');
  $clock.countdown(get15dayFromNow(), function(event) {
    $(this).html('Time Left :   '+'00:'+event.strftime('%M:%S'));

    var counterVal  =   $("#clock").text();
    if((counterVal   == '00:00') || (counterVal   == '00:00:00'))
    { 
        submitForm(); 
    }

 });

function submitForm()
{
    document.getElementById("target").submit();

}

 <div class="lead" style="width:30%; text-align:right; font-size:14px; font-weight:bold;" id="clock"><?php echo $duration ; ?>:00</div>
<form id="target" method="post" action="processQuiz_chapter.php">

//Question and options listings here.

 <button type="submit" style="display:none;"  name="submitQuiz" value="submit" class="btn btn-success wrp_submit"><i class="glyphicon glyphicon-floppy-disk"></i> Submit</button>
        <button type="submit" value="submit" class="btn btn-success wrp_submit_togle"><i class="glyphicon glyphicon-floppy-disk"></i> Submit</button>
</form>

2 个答案:

答案 0 :(得分:1)

首先,您需要在文档就绪函数中保留js代码,

有一个事件会在你完成你的时间后执行,你可以使用它 提交表格的活动。查看文本为 finish.countdown

的行

请尝试以下代码。

$(document).ready(function(){
    function get15dayFromNow() {   

       return new Date(new Date().valueOf() + <?php echo $duration ; ?> * 60 * 1000);

           }

       var $time_spend = $('#time_spend');
          $time_spend.countdown(get15dayFromNow(), function(event) {
            $(this).val(event.strftime('%M:%S'));
          });

       var $clock = $('#clock');
        $clock.countdown(get15dayFromNow(), function(event) {
            $(this).html('Time Left :   '+'00:'+event.strftime('%M:%S'));
        })
        .on('finish.countdown', function() {
            submitForm();
        });

    function submitForm()
    {
        document.getElementById("target").submit();

    }
});

详细了解Document

答案 1 :(得分:0)

最后它现在排序了。行

if((counterVal   == '00:00') || (counterVal   == '00:00:00'))
    { 
        submitForm(); 
    } 

必须被替换为,

if((counterVal   == 'Time Left :   00:00:00') || (counterVal   == 'Time Left :   00:00'))
    { 
        submitForm(); 
    }