两个提交按钮(一个隐藏,一个可见)

时间:2015-03-15 15:14:03

标签: javascript php

隐藏了一个按钮,如果它到达setTimeout,它将提交页面。另一个按钮是可见的,并给他们一条消息"你即将结束这次尝试。

这是两个按钮:

<input type="submit" style="display: none;" name="autosubmit" onclick="autoclick()">
<input type="submit" value="Submit and finish" onclick="return changeSncro()">

有javescript:

<script type="text/javascript"> 
    setTimeout(function() {
    document.querySelector('[name="autosubmit"]').click();
}, (5000));

function autosubmit(){
sncro = 0;
}
</script>
<script type="text/javascript">

var sncro = 0;

function changeSncro(){
sncro = 1;
return confirm('You are about to close this attempt. Once you close the attempt you will no longer be able to change your answers.')

}


window.onbeforeunload = function (evt) {
    if(sncro !=1){
        var message = 'If you leave prior to SUBMITTING your test, it WILL NOT be scored and you WILL NOT get another attempt';
        if (typeof evt == 'undefined') {
            evt = window.event;
        }
        if (evt ) {
        evt.returnValue = message;
        }
            return message;
    }
}

function maximize(){
    window.moveTo(0, 0);
    window.resizeTo(screen.width, screen.height);
}
maximize();
</script>

现在Time out工作正常,但它提交的方式就像有人点击浏览器中的X按钮一样。它只需要提交信息。可见按钮正常工作。

由于

1 个答案:

答案 0 :(得分:0)

这是一个提交按钮,因此它将提交表单。尝试a)使用普通按钮,b)停止提交按钮的默认行为,或c)根本不使用按钮。你有一个计时器在运行,为什么不通过函数调用来做你想做的事情?

顺便说一句,这段代码看起来像1998年的东西。它在技术上是正确的,但我建议你看一下像jQuery这样的现代库,并了解事件监听器。如果你依靠一些在线资源来学习这些东西,那就去寻找其他人。 15年来发生了很多变化,看到HTML中的“onclick”应该是一个大红旗!祝好运。