停止表单提交多次

时间:2016-07-20 12:52:39

标签: javascript

我有这个代码,并且我尝试了很多方法来阻止表单多次提交,但没有任何效果。非常感谢任何建议!

document.getElementById("submit-order-button").addEventListener('click', function(event) {
  var formValid = Object.keys(that.state).map(function(elem){
    if(that.state[elem] === "") {
      return false
    } else {
      return true
    }
  })

  var emailValid;
  if (that.state.email.indexOf("@") > -1 && that.state.email.indexOf(".") > -1) {
    emailValid = true;
  } else {
    emailValid = false;
  }

  if (!emailValid || formValid.indexOf(false) > -1) {
    $("#validation-text").show()
    $("html, body").animate({ scrollTop: 0 }, "slow");
  } else {

  }
}, false);

1 个答案:

答案 0 :(得分:0)

// Stop browser default behaviour
event.preventDefault();

返回true 是不必要的。例如,使用flag(1/0,true / false)进行计数提交尝试(并在提交前检查(!))。