开发一个美观大方的修改密码表单界面,包含3个表单项:旧密码、新密码和确认密码,监听表单提交事件,当表单提交时完成如下3种检查 1.要求输入的旧密码字符个数必须大于6个字符小于12个字符,否则在旧密码输入框的后面以红色字体提示“旧密码长度有误”; 2.要求输入的新密码和确认密码相同,否则在确认密码的下面以红色字体显示“新密码与确认密码不一致”; 3.新密码里必须包含数字、字母,否则在新密码输入框后面提示“必须包含数字、字母”。
时间: 2023-12-10 20:04:48 浏览: 99
Vue+element+cookie记住密码功能的简单实现方法
以下是一个简单的 HTML/CSS/JavaScript 代码示例,实现了上述要求的表单界面和表单检查功能:
```html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>修改密码</title>
<style>
body {
font-family: Arial, sans-serif;
background-color: #f8f8f8;
}
h1 {
text-align: center;
margin-top: 50px;
}
form {
width: 400px;
margin: 0 auto;
background-color: #fff;
padding: 20px;
box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
}
label {
display: block;
margin-bottom: 10px;
font-weight: bold;
}
input[type="password"] {
width: 100%;
padding: 10px;
margin-bottom: 20px;
border: 2px solid #ccc;
border-radius: 5px;
font-size: 16px;
}
input[type="submit"] {
background-color: #007bff;
color: #fff;
padding: 10px 20px;
border: none;
border-radius: 5px;
font-size: 16px;
cursor: pointer;
}
.error {
color: red;
font-size: 14px;
margin-top: 5px;
}
</style>
</head>
<body>
<h1>修改密码</h1>
<form id="password-form">
<label for="old-password">旧密码</label>
<input type="password" id="old-password" name="old-password">
<span class="error" id="old-password-error"></span>
<label for="new-password">新密码</label>
<input type="password" id="new-password" name="new-password">
<span class="error" id="new-password-error"></span>
<label for="confirm-password">确认密码</label>
<input type="password" id="confirm-password" name="confirm-password">
<span class="error" id="confirm-password-error"></span>
<input type="submit" value="提交">
</form>
<script>
const form = document.getElementById('password-form');
const oldPasswordInput = document.getElementById('old-password');
const newPasswordInput = document.getElementById('new-password');
const confirmPasswordInput = document.getElementById('confirm-password');
const oldPasswordError = document.getElementById('old-password-error');
const newPasswordError = document.getElementById('new-password-error');
const confirmPasswordError = document.getElementById('confirm-password-error');
form.addEventListener('submit', e => {
// 阻止表单默认提交行为
e.preventDefault();
// 重置错误提示信息
oldPasswordError.textContent = '';
newPasswordError.textContent = '';
confirmPasswordError.textContent = '';
// 检查旧密码长度
if (oldPasswordInput.value.length < 6 || oldPasswordInput.value.length > 12) {
oldPasswordError.textContent = '旧密码长度有误';
return;
}
// 检查新密码是否包含数字和字母
const passwordPattern = /^(?=.*\d)(?=.*[a-zA-Z])[a-zA-Z\d]{6,12}$/;
if (!passwordPattern.test(newPasswordInput.value)) {
newPasswordError.textContent = '必须包含数字、字母';
return;
}
// 检查新密码和确认密码是否一致
if (newPasswordInput.value !== confirmPasswordInput.value) {
confirmPasswordError.textContent = '新密码与确认密码不一致';
return;
}
// 表单提交成功,可以在这里向后端发送修改密码的请求
});
</script>
</body>
</html>
```
这个示例中,使用了一些基本的 HTML/CSS/JavaScript 技术,通过表单元素、标签、样式以及事件监听等来实现表单界面和表单检查功能。具体来说,HTML 中包含了一个表单元素 `form`,包含三个密码输入框 `input` 和一个提交按钮 `input[type="submit"]`,以及三个用于显示错误提示信息的 `span` 元素。CSS 中定义了一些基本的样式,包括字体、颜色、边框、圆角等。JavaScript 中使用了 DOM API 来获取表单元素和错误提示元素,并且通过事件监听函数来实现表单检查功能。具体来说,当表单提交时,会阻止默认的提交行为,然后依次检查旧密码长度、新密码是否包含数字和字母、新密码和确认密码是否一致,如果有错误则显示相应的错误提示信息,如果没有错误则可以在事件监听函数中执行向后端发送修改密码请求的操作。
阅读全文