欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

javascript验证form表单数据的案例详解

程序员文章站 2022-06-14 17:44:39
直接po截图和代码 下面是checkformdemo.html

直接po截图和代码

javascript验证form表单数据的案例详解

javascript验证form表单数据的案例详解

下面是checkformdemo.html

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>验证表单的案例</title>
<link rel="stylesheet" type="text/css" href="../css/body.css" rel="external nofollow" />
<script type="text/javascript" src="jscheckdatedemo.js"></script>
</head>
<body>
<h1>验证表单的案例</h1>
<form name="form1" id="f1" action="../testform" method="get">
姓名:<input type="text" name="username" id="uname">
<br/>
年龄:<input type="text" name="age" id="uage">
<br/>
密码:<input type="password" name="pwd" id="mypwd">
<br/>
重复密码:<input type="password" name="repeatpwd" id="myrepeatpwd">
<br/>
<!-- 
虽然复选框设置了 name属性,但是如果复选框不选中,是不会提交到服务器端的,只
有选中了的复选框,才会提交到服务器端
 -->
爱好:<input type="checkbox" name="hobby" id="myhobby" value="football">足球
<input type="checkbox" name="hobby" id="myhobby" value="badminton">羽毛球
<input type="checkbox" name="hobby" id="myhobby" value="basketball">篮球
<input type="checkbox" name="hobby" id="myhobby" value="billiards">台球
<br/>
备注:<textarea rows="3" cols="30" id="remarks"></textarea>
<br/>
<!-- 只有设置了 name 属性的表单元素才能在提交表单时传递它们的值 -->
测试字段:<input type="text" id="test" value="本文本框故意不设置name属性,看服务器端能不能接收到">
<br/>
<!-- 
onclick="checkform();"这句话中的;分号也可以省略不写,但是如果有多行js代
码的话,那就要在每行js代码后面加上;分号,最后一行js代码后面可以不写;分号,也可以写上;分号
 -->
<input type="button" value="js验证表单" onclick="checkform();">
<input type="submit" value="提交到servlet">
</form>
</body>
</html>

下面是jscheckdatedemo.js

/**
 * 
 */
 
//验证表单数据
function checkform(){
//	alert(document.form1.hobby.length);
//	alert(document.getelementsbyname("hobby").length);
//	alert(document.getelementsbyname("hobby")[0].value);
//	alert(document.getelementbyid("myhobby"));
	
//	for (var i = 0; i < document.forms[0].hobby.length; i++) {
//		alert("---" + document.forms[0].hobby[i].value);
//	}
	
	var flag = false;
	for (var i = 0; i < document.form1.hobby.length; i++) {
//		alert(document.form1.hobby[i].value);
//		alert(document.form1.hobby[i].checked);
		if (document.form1.hobby[i].checked) {
			flag = true;
			break;
		}
	}
	if (!flag) {//没有一个爱好被选中
		alert("请至少选择一个爱好!");
		//程序也没必要再往下走了,直接return
		return;
	}
	if (document.forms[0].pwd.value.length < 8) {
		alert("密码长度不能小于8位!");
		document.forms[0].pwd.focus();//让密码框获取焦点
		//程序也没必要再往下走了,直接return
		return;
	}
	if (document.forms[0].pwd.value != document.forms[0].repeatpwd.value) {
		alert("两次密码输入不一致!");
		document.forms[0].repeatpwd.focus();//让重复密码框获取焦点
		//程序也没必要再往下走了,直接return
		return;
	}
	if (document.getelementbyid("remarks").value == "") {
		alert("备注不能为空!");
		/*
这里可以不写return,因为程序执行到这里时,后面已经没有任何代码了,所
以写不写return都无所谓,所以就不要写return了,写了反而让人觉得你是个新手,水平有点菜!
		*/
	}
}
 

以上所述是小编给大家介绍的javascript验证form表单数据详解整合,希望对大家有所帮助