Javascript 在提交之前单击输入提交时,如何验证输入?

Javascript 在提交之前单击输入提交时,如何验证输入?,javascript,html,Javascript,Html,我希望这样,当他们单击submit按钮时,它将首先用class=“req”检查所有字段,如果其中任何字段为空,它将停止提交并给它们一个错误,否则提交应通过 我怎样才能做到这一点?这应该可以做到: document.getElementById('myForm').onsubmit = function() { var elems = document.getElementsByClassName('req'); for(var i = 0; i < elems.length

我希望这样,当他们单击submit按钮时,它将首先用class=“req”检查所有字段,如果其中任何字段为空,它将停止提交并给它们一个错误,否则提交应通过

我怎样才能做到这一点?

这应该可以做到:

document.getElementById('myForm').onsubmit = function() {
    var elems = document.getElementsByClassName('req');
    for(var i = 0; i < elems.length; i++) {
        if(elems[i].value.length == 0) {
            return false;
        }
    }
}
这应该做到:

document.getElementById('myForm').onsubmit = function() {
    var elems = document.getElementsByClassName('req');
    for(var i = 0; i < elems.length; i++) {
        if(elems[i].value.length == 0) {
            return false;
        }
    }
}
在表单中添加“onsubmit”事件处理程序将允许您在需要时采取操作

  <form onsubmit="checkMyForm(this)">
  ...
  </form>

...
然后您可以定义一个处理程序

  <script>
  function checkMyForm(myForm) {
    for (var i = 0; i < myForm.elements.length; ++i) {
      var input = myForm.elements[i];
      if (/\breq\b/.test(input.className) && !input.value) {
        // Has an empty required input
        alert('Please enter all required inputs');
        input.focus();
        return false;  // abort form submission
      }
    }
  }
  </script>

函数检查myForm(myForm){
对于(变量i=0;i
在表单中添加一个“onsubmit”事件处理程序将允许您在需要时执行操作

  <form onsubmit="checkMyForm(this)">
  ...
  </form>

...
然后您可以定义一个处理程序

  <script>
  function checkMyForm(myForm) {
    for (var i = 0; i < myForm.elements.length; ++i) {
      var input = myForm.elements[i];
      if (/\breq\b/.test(input.className) && !input.value) {
        // Has an empty required input
        alert('Please enter all required inputs');
        input.focus();
        return false;  // abort form submission
      }
    }
  }
  </script>

函数检查myForm(myForm){
对于(变量i=0;i
如果任何隐藏的或其他非必需的输入值为空,则此操作将失败。@mikesamuel-我不知道如何操作。真的有必要投反对票吗?我同意,卡里姆,这应该行得通,因为你只得到了“req”字段,对吗?如果任何隐藏的或其他非必需的输入有空值,这将失败。@mikesamuel-我不知道怎么做。真的有必要投反对票吗?我同意,卡里姆,这应该行得通,因为你只得到了'req'字段,对吧?onsubmit=“checkMyForm(this)”=侵入式javascript=恶心。看起来不错,但我不明白如果(/\breq\b/.test(…行,你能告诉我那里发生了什么吗?onsubmit=“checkMyForm(this)”=intrusive javascript=恶心。看起来不错,但我不明白如果(/\breq\b/.test(…行),你能告诉我那里发生了什么吗?