如果用户中断重定向到新页面,则禁用提交按钮将保持禁用状态

时间:2011-03-02 08:38:46

标签: javascript html double-submit-prevention

我想在使用javascript按下后禁用提交按钮。

myForm.onsubmit = function(){   ...   mySubmitButton.disabled = true;   ... }

但是当用户在当前仍处于活动状态时停止打开新页面时,该按钮仍处于禁用状态。

如果来自服务器的内容是文件(在这种情况下将不会重定向到新页面),将会出现相同的结果。

有没有办法确定浏览器是否“不想”再加载新网址并重新启用mySubmitButton?

2 个答案:

答案 0 :(得分:1)

我认为您可以使用setTimeout来调用重新启用按钮的函数。超时必须是合理的值,如5000(5s)。我不记得是否在页面重定向后执行了setTimeout / Interval调用,因此,请先测试它。

答案 1 :(得分:1)

如果你真的需要来做所有客户端有几种方式可以做到这一点:

  1. 如果用户决定再次修改,请尝试重新启用该按钮,例如点击任何表单字段。

  2. @Adilson所说的,setTimeout也是一个很好的解决方案,你不需要等待几秒钟才能知道出错的地方。

  3. 您还可以使用jQuery ajax调用提交表单,如果提交失败,可以返回重新启用按钮的命令。

  4. 我确信还有更多解决方案。我希望那些3会给你一个解决问题的想法。