javascript - 使用 Javascript 循环检查空表单字段

标签 javascript forms loops

我正在尝试循环浏览一个小表单并检查空白字段。我以为这很简单,但我无法让任何东西发挥作用。到目前为止,这是我的 Javascript:

var obj = {

fname : document.getElementsByName('fname'),
lname : document.getElementsByName('lname'),
phone : document.getElementsByName('phone'),
email : document.getElementsByName('email'),
span : document.createElement('span'),
txt : document.createTextNode('*Required Field'),



init : function(){
     document.getElementsByName('submit').onclick = obj.validate;
},

validate : function(){
     var check = document.getElementsByTagName('input');
     var len = check.length;
     for(var i=0;i<len;i++)
     {
     if (check[i].value ==='')
     {
          alert('required');
          return false;
     }; 

 };

  },

};

这是 HTML:

<body>
<form method="post" action="">
<div>
<ul>
<li><label>First Name</label><input type="text" name="fname" size="30"  /></li>
<li><label>Last Name</label><input type="text" name="lname" size="30"  /></li>
<li><label>Phone</label><input type="text" name="phone" size="30"  /></li>
<li><label>Email</label><input type="text" name="email" size="30" /></li>
<li><input type="submit" name="submit" value="Submit" /></li>
</ul>
</div>
</form>
<script type="text/javascript" src="js/main.js"></script>
<script type="text/javascript">obj.init();</script>  
</body>
</html> 

我认为我应该能够循环输入并在值为空时发出警报,但是,它对我不起作用。任何帮助都会很棒。

最佳答案

试试这个(在将 id="submit" 属性添加到提交元素后):

  init : function(){
     document.getElementById('submit').onclick = obj.validate;
  },

  validate : function(){
     var check = document.getElementsByTagName('input');
     var len = check.length;
     for(var i=0;i<len;i++) {
       if (check[i].value ==='')
       {
          alert('required');
          return false;
       }; 
     };
  }

关于javascript - 使用 Javascript 循环检查空表单字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22976213/

相关文章:

javascript - 如何循环使用 Google Maps API 旅行模式

javascript - 如何使用 javascript 或 jquery 将此菜单栏链接到此 div 内容...?

html - 表单类不工作

matlab - 减少包含多个矩阵运算的 Matlab 循环执行时间的技巧

php - 从多个表循环信息的问题

c# - 在 C# 中使用任何循环,从 0 到 20 计数,每行都有一条消息,对于每个可被 5 整除的数字,都有一条特殊消息

javascript - 使用 javascript 向表行 (<TR>) 添加内容?

javascript - 当它悬停在页面右侧时,将工具提示跨度重新对齐到左侧

ruby-on-rails - 如何在一种Ruby on Rails表单中编辑多个记录?

forms - 使用 yesod-form 在 POST/Redirect/GET 后保留不正确的用户输入