使用javascript无效的表单验证

时间:2014-08-28 18:04:24

标签: javascript html

我正在尝试验证我的注册表单,但它不起作用,我谷歌但没有找到解决方案。 这是我的javascript代码:

      <script>
      function validateForm() {
      var x = document.forms["form"]["firstname"].value;
      if (x==null || x=="") {
      alert("First name must be filled out");
      return false;
      }
      }
      </script>

我的表格是:

    <form name="form" id="form" action="register.php" method="post" 
    enctype="multipart/form-data" onsubmit="return validateForm()">

       <span class="required">*</span> First Name:</td>
       <input type="text" name="firstname" id="firstname" value="" />
       <input type="submit" value="Continue" class="button" />

    </form>

2 个答案:

答案 0 :(得分:0)

您应该使用document.getElementById来获取firstname输入的值。如果你想看到它有效,我在这里做了一个小提琴:http://jsfiddle.net/365qebye/1/

  function validateForm() {          
      var x = document.getElementById("firstname").value;          
      if (x === null || x === "") {
          alert("First name must be filled out");
          return false;
      }
  }

答案 1 :(得分:0)

此设置不正确。所以,我编辑了它以显示更好的方法。不是完美的方式,而是接近你已经写过的东西。

像这样改变它:

 <form name="form" id="form" action="register.php" method="post" 
    enctype="multipart/form-data">

       <span class="required">*</span> First Name:</td>
       <input type="text" name="firstname" id="firstname" value="" />
       <input type="button" value="Continue" class="button" onclick="validateForm()" />

    </form>

然后,如果通过则提交提交:

<script>
diItPass=1;
      function validateForm() {
      var x = document.forms["form"]["firstname"].value;
      if (x==null || x=="") {
      alert("First name must be filled out");
      didItPass=0;
if (didItPass==1) { document.getElementById("form").submit() }


      }
      }
      </script>

这个想法是,设置一个变量来显示表单是否通过了提交。如果是,请提交。如果它没有显示警报,则不执行任何其他操作。