文本框验证

时间:2010-08-06 01:13:45

标签: javascript validation

如何在循环中获取所有文本框以进行验证以检查所有

if (textbox.text == "",textbox2.text == "",textbox3.text == "")
{
textbox.Focus();
}

2 个答案:

答案 0 :(得分:1)

尝试使用getElementsByTagName(elementType),或者如果您已经为每个文本框指定了要检查的某个类,那么getElementsByClass(className)的一些不同实现也会浮动(例如http://www.dustindiaz.com/getelementsbyclass/)。

例如,如果您的所有文本框都是textareas:

var textboxes = document.getElementsByTagName('textarea');
for (var i=0; i<textboxes.length; i++){
    if (textboxes[i].value == ""){
        textboxes[i].focus();
        break;
    }
}

如果您只想从特定父级内部检查textareas,也可以将'document'替换为特定的父元素。

编辑:我在循环中添加了一个中断,以便在找到验证失败的文本框并关注该元素后退出。

答案 1 :(得分:0)

敦忧。你可以在循环内完成。

<script>
<!-- 
function chkForm(obj) 
{
      for (i=0; i<obj.childNodes.length; i++) 
    {
             if (obj.childNodes[i].tagName == "INPUT") 
        {
                        if (obj.childNodes[i].type == "text") 
            {
                         if(obj.childNodes[i].value == "")
                {
                    obj.childNodes[i].focus();  
                }
            }
          }   
    }
}
 -->
</script>



<form onsubmit="return chkForm(document.getElementById('myform'));" name="myform" id="myform">
<input type="text" name="myfield1"> <br>
<input type="text" name="myfield2"> <br>
<input type="submit" name="btnSubmit" value="Submit">
</form>