2011-02-27 33 views
2
<pre> 
<script> 
// here i want to check form validation 
//if i use for loop txtbox2 is not exist in my form so i am getting Js error 


//Don't write individual validation 
//check element is exist or not if exist check for validation 

//I need know how to check an element is exist or not 
</script> 

<form 
<input type="text" id="txtbox1" name="txtbox1" />* 
<input type="text" id="txtbox3" name="txtbox3" />* 
<input type="text" id="txtbox4" name="txtbox4" />* 
<input type="text" id="txtbox5" name="txtbox5" />* 
<input type="text" id="txtbox15" name="txtbox15" />* 
<input type="text" id="txtbox28" name="txtbox28" />* 

</pre> 
+0

我不确定你想要做什么。请澄清。 – jmort253 2011-02-27 08:10:27

+0

你没有关闭你的表格标签(你没有在“表格”上关闭guillemet,也没有关闭“”标签)。这是提交这个问题的错误,还是解决了你的问题? – TimFoolery 2011-02-27 08:13:17

回答

2

套用class对他们说:

<input type="text" id="txtbox1" name="txtbox1" class="txt" /> 
<input type="text" id="txtbox3" name="txtbox3" class="txt" /> 
<input type="text" id="txtbox4" name="txtbox4" class="txt" /> 
<input type="text" id="txtbox5" name="txtbox5" class="txt" /> 
<input type="text" id="txtbox15" name="txtbox15" class="txt" /> 
<input type="text" id="txtbox28" name="txtbox28" class="txt" /> 

,并去了解这样的:

function validate(){ 
    var elms = document.getElementsByTagName('input'); 

    for (var i = 0; i < elms.length; i++){ 
    if (elms[i].className === 'txt'){ 
     if (elms[i].value === ''){ 
      alert('Make sure to fill in all required fields'); 
      // now focus it 
      elms[i].focus(); 
      return false; 
     } 
    } 
    } 

    return true; 
} 

然后调用这样上面的函数:

<form ............ onsubmit="return validate();"> 
1

你可以得到元素的引用,并检查参考为空或不是:

for (var i=1; i<=100; i++) { 
    var elem = document.getElementById('txtbox' + i); 
    if (elem != null) { 
    ... 
    } 
} 

另一种方法是看在表格中的元素,但你需要一种方法来访问过程的形式:

var elems = document.getElementById('IdOfTheForm').elements; 
for (var i=0; i<elems.length; i++) { 
    var elem = elems[i]; 
    if (elem.tagName == 'INPUT' && elem.type == 'text' && elem.id.length > 6 && elemt.id.substr(0,6) == 'txtbox') { 
    ... 
    } 
} 
2

发布您的代码。

最简单的方法来验证是通过使用jquery validate插件。(为什么编写自己的代码时,别人做了相同的?)。

一个例子

<script type="text/javascript" src="http://code.jquery.com/jquery-1.5.1.js"></script> 
<script type="text/javascript" src="http://ajax.microsoft.com/ajax/jquery.validate/1.7/jquery.validate.min.js"></script> 

<script type="text/javascript"> 
    $(document).ready(function() { 
    $("#feedbackform").validate(); 
    }); 
</script> 

<body> 
<form id = "feedbackform" method = "POST" action = ""> 
<h3><span>Contact Us</span></h3> 
<fieldset> 
    <legend>Contact form</legend> 

    <label for="id_name">Name *</label> 
    <input id="id_name" class="required" type="text" name="name" /> 

    <label for="id_email">Email</label> 
    <input id="id_email" type="email" name="email" class="email"/> 

    <label for="id_comments">Message *</label> 
    <textarea id="id_comments" class="required" name="comments"></textarea> 
    <button type="submit">Send</button>  

</fieldset>   
</form> 

要验证添加类= “需要” 的元素。我希望提供的例子是自我解释的

相关问题