帮我写一个html页面: 页面是左右布局,输入框按钮等靠右边; 页面需要自适应,能够适应pc页面手机页面; 标签名称为文件实验室/账号登录; 两个input框,一个显示输入接收验证码的邮箱在他的右边有一个按钮名称为获取验证码, 第二个input输入框显示输入验证码,他的下方是一个登录按钮; 然后使用ajax技术,将获取到的邮箱账号使用post发送到/admin/等待后端发送验证码,获取验证码的按钮点击后显示60秒后再试期间按钮不能触发; 用户填入验证码后使用post发送到/response/等待后端验证,后端验证通过后跳转到https://www.spacexs.cn,失败则要求重新输入; 字体使用楷体,页面语言是简体中文, 要求点击获取验证码后,按钮文本显示为60秒后再试期间禁用按钮 使用ajax发送请求
时间: 2023-12-06 11:39:54 浏览: 143
好的,以下是一个简单的HTML页面,布局满足您的要求,并且使用了AJAX技术来发送请求:
```html
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<title>文件实验室/账号登录</title>
<style>
* {
margin: 0;
padding: 0;
}
html, body {
height: 100%;
}
.container {
display: flex;
flex-direction: row;
height: 100%;
}
.left {
flex: 1;
background-color: #f0f0f0;
}
.right {
flex: 1;
background-color: #fff;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
}
form {
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
text-align: center;
}
input[type="email"], input[type="text"] {
width: 100%;
padding: 10px;
margin-bottom: 10px;
box-sizing: border-box;
border: none;
border-bottom: 1px solid #ccc;
font-family: "楷体";
font-size: 16px;
}
input[type="submit"], button {
padding: 10px 20px;
border: none;
background-color: #007bff;
color: #fff;
font-family: "楷体";
font-size: 16px;
cursor: pointer;
}
input[type="submit"]:hover, button:hover {
background-color: #0056b3;
}
input[type="submit"]:disabled, button:disabled {
background-color: #d9d9d9;
cursor: not-allowed;
}
</style>
</head>
<body>
<div class="container">
<div class="left"></div>
<div class="right">
<form>
<input type="email" id="email" name="email" placeholder="输入接收验证码的邮箱">
<button id="get-code">获取验证码</button>
<input type="text" id="code" name="code" placeholder="输入验证码">
<input type="submit" id="login" value="登录">
</form>
</div>
</div>
<script>
var getCodeBtn = document.getElementById('get-code');
var countdown = 60;
var timer = null;
function countDown() {
getCodeBtn.disabled = true;
getCodeBtn.innerText = countdown + '秒后再试';
countdown--;
if (countdown < 0) {
clearInterval(timer);
getCodeBtn.disabled = false;
getCodeBtn.innerText = '获取验证码';
}
}
getCodeBtn.onclick = function() {
// 发送AJAX请求获取验证码
var email = document.getElementById('email').value;
var xhr = new XMLHttpRequest();
xhr.open('POST', '/admin/');
xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
xhr.onreadystatechange = function() {
if (xhr.readyState === XMLHttpRequest.DONE) {
if (xhr.status === 200) {
// 成功获取验证码,开始倒计时
timer = setInterval(countDown, 1000);
} else {
// 获取验证码失败
alert('获取验证码失败,请重试');
}
}
};
xhr.send('email=' + encodeURIComponent(email));
};
document.getElementById('login').onclick = function() {
// 发送AJAX请求验证验证码并登录
var code = document.getElementById('code').value;
var xhr = new XMLHttpRequest();
xhr.open('POST', '/response/');
xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
xhr.onreadystatechange = function() {
if (xhr.readyState === XMLHttpRequest.DONE) {
if (xhr.status === 200) {
// 登录成功,跳转到目标页面
window.location.href = 'https://www.spacexs.cn';
} else {
// 登录失败
alert('验证码错误,请重新输入');
}
}
};
xhr.send('code=' + encodeURIComponent(code));
};
</script>
</body>
</html>
```
您可以将上述代码保存为一个HTML文件,然后在浏览器中打开来查看效果。需要注意的是,因为我们使用了AJAX发送请求,所以在本地预览时可能会出现跨域问题,建议将代码部署到服务器上进行测试。