已废弃
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

249 lines
12 KiB

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="utf-8">
<title>分步表单</title>
<meta name="renderer" content="webkit">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<link rel="stylesheet" href="/static/lib/layui-v2.6.3/css/layui.css" media="all">
<link rel="stylesheet" href="/static/css/public.css" media="all">
<link rel="stylesheet" href="/static/js/lay-module/step-lay/step.css" media="all">
</head>
<body>
<div class="layuimini-container">
<div class="layuimini-main">
<div class="layui-fluid">
<div class="layui-card">
<div class="layui-card-body" style="padding-top: 40px;">
<div class="layui-carousel" id="stepForm" lay-filter="stepForm" style="margin-top: 5em;">
<div carousel-item>
<div>
<form class="layui-form" style="margin: 0 auto;max-width: 460px;padding-top: 40px;">
<div class="layui-form-item">
<h2>验证码将发送至<span id="oldEmail" th:text="${email}">1789131794@qq.com</span></h2>
<h3 style="color: grey;margin-top: 1em">如果长时间未收到验证码,请检查垃圾箱</h3>
</div>
<div class="layui-form-item" style="margin-top: 5em">
<label class="layui-form-label required" style="display: inline">邮箱验证码:</label>
<input type="text" id="oldCode" class="layui-input" name="oldCode"
placeholder="请输入验证码"
lay-verify="required"
maxlength="4" style="width:160px;display: inline">
<button id="sendCodeBtn1" class="layui-btn layui-btn-normal layui-btn-sm"
style="display: inline;margin-left: 10px">发送验证码
</button>
</div>
<div class="layui-form-item">
<div class="layui-input-block">
<button class="layui-btn" lay-submit lay-filter="formStep1">
&emsp;下一步&emsp;
</button>
</div>
</div>
</form>
</div>
<div>
<form class="layui-form" style="margin: 0 auto;max-width: 460px;padding-top: 40px;">
<div class="layui-form-item">
<label class="layui-form-label required">邮箱</label>
<div class="layui-input-block">
<input type="newEmail" name="email" lay-verify="email" placeholder="请输入邮箱"
value=""
class="layui-input">
</div>
</div>
<div class="layui-form-item" style="margin-top: 5em">
<label class="layui-form-label required" style="display: inline">邮箱验证码:</label>
<input type="text" id="newCode" class="layui-input" name="newCode"
placeholder="请输入验证码"
lay-verify="required"
maxlength="4" style="width:160px;display: inline">
<button id="sendCodeBtn2" class="layui-btn layui-btn-normal layui-btn-sm"
lay-submit style="display: inline;margin-left: 10px">发送验证码
</button>
</div>
<div class="layui-form-item">
<div class="layui-input-block">
<button class="layui-btn" lay-submit lay-filter="formStep2">
&emsp;下一步&emsp;
</button>
</div>
</div>
</form>
<div>
<div style="text-align: center;margin-top: 90px;">
<i class="layui-icon layui-circle"
style="color: white;font-size:30px;font-weight:bold;background: #52C41A;padding: 20px;line-height: 80px;">&#xe605;</i>
<div style="font-size: 24px;color: #333;font-weight: 500;margin-top: 30px;">
邮箱修改成功
</div>
</div>
</div>
</div>
</div>
</div>
<hr>
<div style="color: #666;margin-top: 30px;margin-bottom: 40px;padding-left: 30px;">
<h3>说明</h3><br>
验证码五分钟后会失效,请及时输入。
</div>
</div>
</div>
</div>
</div>
</div>
<script src="/static/lib/layui-v2.6.3/layui.js" charset="utf-8"></script>
<script src="/static/js/lay-config.js?v=1.0.4" charset="utf-8"></script>
<script>
layui.use(['form', 'layer', 'step'], function () {
var $ = layui.$,
form = layui.form,
layer = layui.layer,
step = layui.step;
step.render({
elem: '#stepForm',
filter: 'stepForm',
width: '100%', //设置容器宽度
stepWidth: '750px',
height: '600px',
stepItems: [{
title: '验证旧邮箱'
}, {
title: '验证新邮箱'
}, {
title: '修改成功'
}]
});
$('#sendCodeBtn1').click(function () {
let email = $('#oldEmail').text();
console.log(email);
$.ajax({
url: "/sendCode",
data:'{"email":'+JSON.stringify(email)+'}',
type: "post",
dataType: 'JSON',
contentType: "application/json;charset=utf-8",
success: function (data) {
if (data.status !== 200) {
layer.msg(data.statusInfo.message);//失败的表情
return;
} else {
layer.msg("验证码发送成功,请前往邮箱查看", {
icon: 6,//成功的表情
time: 1000 //1秒关闭(如果不配置,默认是3秒)
}, function () {
});
}
}
});
// $.ajax({
// url: '/sendCode',
// type: 'POST',
// dataType:'json',
// contentType: "application/json;charset=utf-8",
// data: '{"email":'+JSON.stringify(email)+'}',
// beforeSend: function () {
// this.layerIndex = layer.load(0, {shade: [0.5, '#393D49']});
// },
// success: function (res) {
// if (res.status >= 300) {
// layer.msg(data.statusInfo.message);//失败的表情
// } else {
// layer.msg("验证码发送成功,请前往邮箱查看", {
// icon: 6,//成功的表情
// time: 1000 //1秒关闭(如果不配置,默认是3秒)
// });
// }
// }
// });
})
form.on('submit(formStep1)', function (data) {
data = data.field;
console.log(JSON.stringify(data));
$.ajax({
type: 'put',
dataType: 'json',
contentType: "application/json;charset=utf-8",
url: '/checkOldEmail',
data: JSON.stringify(data),
beforeSend: function () {
this.layerIndex = layer.load(0, {shade: [0.5, '#393D49']});
},
success: function (res) {
if (res.status >= 300) {
layer.msg(data.statusInfo.message);//失败的表情
} else {
layer.msg("验证成功", {
icon: 6,//成功的表情
time: 1000 //1秒关闭(如果不配置,默认是3秒)
});
step.next('#stepForm');
}
}
});
return false;
});
$('#sendCodeBtn2').click(function () {
let data = {};
data.email = $('#oldEmail').text();
$.ajax({
type: 'POST',
dataType: 'json',
contentType: "application/json;charset=utf-8",
url: '/sendCode',
data: JSON.stringify(data),
beforeSend: function () {
this.layerIndex = layer.load(0, {shade: [0.5, '#393D49']});
},
success: function (res) {
if (res.status >= 300) {
layer.msg(data.statusInfo.message);//失败的表情
} else {
layer.msg("验证码发送成功,请前往邮箱查看", {
icon: 6,//成功的表情
time: 1000 //1秒关闭(如果不配置,默认是3秒)
});
}
}
});
})
form.on('submit(formStep2)', function (data) {
data = data.field;
data.oldCode = $("#oldCode");
$.ajax({
type: 'put',
dataType: 'json',
contentType: "application/json;charset=utf-8",
url: '/updateEmail',
data: JSON.stringify(data),
beforeSend: function () {
this.layerIndex = layer.load(0, {shade: [0.5, '#393D49']});
},
success: function (res) {
if (res.status >= 300) {
layer.msg(data.statusInfo.message);//失败的表情
} else {
layer.msg("验证成功", {
icon: 6,//成功的表情
time: 1000 //1秒关闭(如果不配置,默认是3秒)
});
step.next('#stepForm');
}
}
});
return false;
});
})
</script>
</body>
</html>