实现如下表单的验证:初始生成4位数字随机验证码。1)用户名为空、注册时显示对应提示信息。2)要求输入的email中必须包含@字符,点号必须出现在@之后并且至少间隔一个字符,@之后必须有点号。3)手机号必须是11位数字形式4)输入的验证码如果和生成的4位随机验证码一致,则通过验证,如不一致则需要把密码文本框和验证码文本框置空。
时间: 2024-03-03 17:53:08 浏览: 57
以下是一个基本的表单验证实现,包括生成验证码和验证表单的各个字段:
```html
<!DOCTYPE html>
<html>
<head>
<title>表单验证</title>
<script type="text/javascript">
// 生成4位随机验证码
function generateCode() {
var code = "";
var chars = "0123456789";
for (var i = 0; i < 4; i++) {
code += chars.charAt(Math.floor(Math.random() * chars.length));
}
document.getElementById("code").value = code;
}
// 验证表单
function validateForm() {
var username = document.getElementById("username").value;
var email = document.getElementById("email").value;
var phone = document.getElementById("phone").value;
var code = document.getElementById("code").value;
var password = document.getElementById("password").value;
// 验证用户名
if (username == "") {
alert("用户名不能为空!");
return false;
}
// 验证邮箱
if (email.indexOf("@") == -1 || email.indexOf(".") == -1 || email.indexOf(".") < email.indexOf("@") + 2) {
alert("请输入有效的邮箱地址!");
return false;
}
// 验证手机号
if (phone.length != 11 || isNaN(phone)) {
alert("请输入有效的手机号码!");
return false;
}
// 验证验证码
if (code != document.getElementById("inputCode").value) {
alert("验证码错误!");
document.getElementById("inputCode").value = "";
document.getElementById("password").value = "";
return false;
}
return true;
}
</script>
</head>
<body onload="generateCode()">
<form onsubmit="return validateForm()">
<label>用户名:</label>
<input type="text" id="username" name="username"><br>
<label>邮箱:</label>
<input type="text" id="email" name="email"><br>
<label>手机号:</label>
<input type="text" id="phone" name="phone"><br>
<label>验证码:</label>
<input type="text" id="inputCode" name="inputCode">
<input type="button" value="刷新" onclick="generateCode()"><br>
<label>密码:</label>
<input type="password" id="password" name="password"><br>
<input type="submit" value="注册">
</form>
</body>
</html>
```
上面的代码中,`generateCode()`函数用于生成4位随机验证码,并将其显示在页面上。`validateForm()`函数用于验证表单的各个字段,其中包括用户名、邮箱、手机号、验证码和密码。如果某个字段验证不通过,则会显示相应的错误提示,并阻止表单提交。如果验证码验证不通过,则会清空密码和验证码输入框。最后,`onsubmit`属性用于在表单提交时调用`validateForm()`函数进行验证。
阅读全文