在超时时将按钮值更改回原始值(表单双提交)

问题描述 投票:8回答:5

我试图通过暂时禁用提交按钮并将提交按钮值更改为“处理...”来修复表单双提交,以便用户知道发生了什么。

禁用工作onClick和“提交”值更改为“处理...”,但是在setTimeout函数结束后,我无法将值更改回“提交”。

有谁知道我怎么能这样做?

$(function() {
  $("#submit_btn").click(function() {
    $("#submit_btn").attr("disabled", "disabled");
    this.value = "Processing...";
    setTimeout(function() {
      this.value = "Submit"; //<- this line doesn't work
      $("#submit_btn").removeAttr("disabled");
    }, 5000);
  });
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input id="submit_btn" type="submit" value="Submit" />
javascript jquery html
5个回答
© www.soinside.com 2019 - 2024. All rights reserved.