写一个html登录页面,有账号,密码,确认密码,邮箱,邮箱验证码,电话,电话验证码,人机验证码,js验证提交所有输入框不能为空,js验证焦点离开确认密码验证两次密码相同,js验证电话验证码和邮箱验证码有效期位1分钟,并且点击发送验证码后实时显示剩余有效期
时间: 2023-05-21 18:02:17 浏览: 112
好的,这是一个典型的表单验证问题,以下是一个简单的 HTML 登录页面的代码示例:
```html
<!DOCTYPE html>
<html>
<head>
<title>Login Page</title>
<script>
function validateForm() {
// 获取表单元素
var username = document.forms["loginForm"]["username"].value;
var password = document.forms["loginForm"]["password"].value;
var confirmPassword = document.forms["loginForm"]["confirmPassword"].value;
var email = document.forms["loginForm"]["email"].value;
var emailCode = document.forms["loginForm"]["emailCode"].value;
var phone = document.forms["loginForm"]["phone"].value;
var phoneCode = document.forms["loginForm"]["phoneCode"].value;
var captcha = document.forms["loginForm"]["captcha"].value;
// 验证所有输入框不能为空
if (username == "" || password == "" || confirmPassword == "" || email == "" || emailCode == "" || phone == "" || phoneCode == "" || captcha == "") {
alert("所有输入框都不能为空!");
return false;
}
// 验证两次密码相同
if (password != confirmPassword) {
alert("两次密码输入不一致!");
return false;
}
// 验证邮箱验证码和电话验证码有效期为1分钟
// 这里只是一个示例,实际上需要后端配合实现
if (emailCodeExpired() || phoneCodeExpired()) {
alert("验证码已过期,请重新获取!");
return false;
}
// 验证人机验证码
// 这里只是一个示例,实际上需要后端配合实现
if (captcha != "1234") {
alert("人机验证码错误!");
return false;
}
// 所有验证通过,提交表单
return true;
}
function emailCodeExpired() {
// 邮箱验证码有效期为1分钟
return false;
}
function phoneCodeExpired() {
// 电话验证码有效期为1分钟
return false;
}
</script>
</head>
<body>
<form name="loginForm" onsubmit="return validateForm()">
<label for="username">账号:</label>
<input type="text" name="username" id="username"><br>
<label for="password">密码:</label>
<input type="password" name="password" id="password"><br>
<label for="confirmPassword">确认密码:</label>
<input type="password" name="confirmPassword" id="confirmPassword"><br>
<label for="email">邮箱:</label>
<input type="email" name="email" id="email"><br>
<label for="emailCode">邮箱验证码:</label>
<input type="text" name="emailCode" id="emailCode"><br>
<label for="phone">电话:</label>
<input type="tel" name="phone" id="phone"><br>
<label for="phoneCode">电话验证码:</label>
<input type="text" name="phoneCode" id="phoneCode"><br>
<label for="captcha">人机验证码:</label>
<input type="text" name="captcha" id="captcha"><br>
<input type="submit" value="提交">
</form>
</body>
</html>
```
这个页面包含了账号、密码、确认密码、邮箱、邮箱验证码、电话、电话验证码、人机验证码等多个输入框,使用了 JavaScript 进行表单验证,确保所有输入框都不能为空,两次密码输入一致,验证码有效期为1分钟,人机验证码正确等。
阅读全文