不能在按提交的时候统一进行验证吗?如果不能,那就只能凭借onblur或者onclick来处理验证。
解决方案 »
- 想要个效果。jquery form
- 如何清除IE浏览器中缓存的用户名,用authorization:Basic验证。
- 各位兄弟姐妹,帮帮忙啊,获得下拉列表框的焦点后,怎样使用快捷键(如F8)选中下拉列表框(selet)的选项,代替鼠标点击,选中各个选项。最好用快捷键能够使select弹出下拉列表(达到和鼠标同样的效果)
- Safari 连续执行两次window.location=url的问题
- 新人求助 如何用Jquery更改<td>下的文字
- 求一个地图似的源码,就是在一张图片上画一个方框然后放大图里内容
- 一个JAVASCRIPT问题(求代码)
- 四则运算
- Cannot set property 'onmouseover' of null
- 为什么运行没有显示啊???
- JS 截取数据问T,,,,,
- 请问 谁知道下面的JS文件里的代码 怎么解密,用什么软件可以告诉一下吗
遍历table里的tr行,得到字元素childNode,再根据类型判断是checkbox or text 根据是否有值,来做验证。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<script type="text/javascript">
function checks(){
var tb = document.getElementById("table1").firstChild;
var idCards = document.getElementsByName("sfzhm");
var names = document.getElementsByName("name");
var isOk = false;
for (var i = 0; i < tb.childNodes.length; i++) {
var checkBoxs = document.getElementsByName("checkBox_"+i);
var isInput1 = idCards[i].value == "" ? false : true;
var isInput2 = names[i].value == "" ? false : true;
var isInput3 = false;
for (var j = 0; j < checkBoxs.length; j++) {
if (checkBoxs[j].checked) {
isInput3 = true;
}
}
//一行中的三项没有全填 并且 不是一行中三项都没有填(也就是说该行有一项或者两项没填)
if (!(isInput1 && isInput2 && isInput3) && !(!isInput1 && !isInput2 && !isInput3)) {
alert("请将第 " + (i+1) + " 行中的数据填写并选勾完整!");
return false;
}
//一行中三项全有填写的话就标记为可以提交
if (isInput1 && isInput2 && isInput3) {
isOk = true;
}
}
if (!isOk) {
alert("您没有填写任何数据!\n\n 请填写数据后再提交。");
return false;
}
return true;
}
</script>
</HEAD>
<BODY>
<br/><br/><br/><br/><br/><br/>
<form action="" method="post" name="form1" onsubmit="return checks();">
<table border=1 align=center id="table1">
<tr><td>身份证号<input type=text name="sfzhm"/></td><td>姓名<input type=text name="name"/></td><td><input type="checkbox" value="0" name="checkBox_0"/>杀人 <input type="checkbox" value="1" name="checkBox_0"/>放火</td></tr><tr><td>身份证号<input type=text name="sfzhm"/></td><td>姓名<input type=text name="name"/></td><td><input type="checkbox" value="0" name="checkBox_1"/>杀人 <input type="checkbox" value="1" name="checkBox_1"/>放火</td></tr><tr><td>身份证号<input type=text name="sfzhm"/></td><td>姓名<input type=text name="name"/></td><td><input type="checkbox" value="0" name="checkBox_2"/>杀人 <input type="checkbox" value="1" name="checkBox_2"/>放火</td></tr><tr><td>身份证号<input type=text name="sfzhm"/></td><td>姓名<input type=text name="name"/></td><td><input type="checkbox" value="0" name="checkBox_3"/>杀人 <input type="checkbox" value="1" name="checkBox_3"/>放火</td></tr><tr><td>身份证号<input type=text name="sfzhm"/></td><td>姓名<input type=text name="name"/></td><td><input type="checkbox" value="0" name="checkBox_4"/>杀人 <input type="checkbox" value="1" name="checkBox_4"/>放火</td></tr><tr><td>身份证号<input type=text name="sfzhm"/></td><td>姓名<input type=text name="name"/></td><td><input type="checkbox" value="0" name="checkBox_5"/>杀人 <input type="checkbox" value="1" name="checkBox_5"/>放火</td></tr><tr><td>身份证号<input type=text name="sfzhm"/></td><td>姓名<input type=text name="name"/></td><td><input type="checkbox" value="0" name="checkBox_6"/>杀人 <input type="checkbox" value="1" name="checkBox_6"/>放火</td></tr><tr><td>身份证号<input type=text name="sfzhm"/></td><td>姓名<input type=text name="name"/></td><td><input type="checkbox" value="0" name="checkBox_7"/>杀人 <input type="checkbox" value="1" name="checkBox_7"/>放火</td></tr><tr><td>身份证号<input type=text name="sfzhm"/></td><td>姓名<input type=text name="name"/></td><td><input type="checkbox" value="0" name="checkBox_8"/>杀人 <input type="checkbox" value="1" name="checkBox_8"/>放火</td></tr><tr><td>身份证号<input type=text name="sfzhm"/></td><td>姓名<input type=text name="name"/></td><td><input type="checkbox" value="0" name="checkBox_9"/>杀人 <input type="checkbox" value="1" name="checkBox_9"/>放火</td></tr>
</table>
<div align=center><br/><input type="submit" value=" 提 交 "/></div>
</form>
</BODY>
</HTML>IE7下测试通过
for(var n=0;n<10,n++){
var identity = document.getElementById("identity"+n).value==''?false:true;
var name = document.getElementById("name"+n).value==''?false:true;
var check = false;
for(var i=1;i<4;i++){
if(document.getElementById("check"+i+"_"+n).checked){
check = true;
}
}
if(identity&&(!name||!check)){
alert('请填写姓名和勾选框');
}
...//如此类推
}