112 lines
3.0 KiB
PHP

<div class="password-section">
<h2 class="section-title">修改密码</h2>
<form class="layui-form" lay-filter="passwordForm">
<div class="layui-form-item">
<label class="layui-form-label">当前密码</label>
<div class="layui-input-block">
<input type="password" name="oldPassword" placeholder="请输入当前密码" class="layui-input" required>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">新密码</label>
<div class="layui-input-block">
<input type="password" name="newPassword" placeholder="请输入新密码" class="layui-input" required>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">确认密码</label>
<div class="layui-input-block">
<input type="password" name="confirmPassword" placeholder="请再次输入新密码" class="layui-input" required>
</div>
</div>
<div class="layui-form-item">
<div class="layui-input-block">
<button class="layui-btn" lay-submit lay-filter="savePassword">保存修改</button>
<button type="reset" class="layui-btn layui-btn-primary">重置</button>
</div>
</div>
</form>
</div>
<style>
.password-section {
max-width: 800px;
margin: 0 auto;
}
.section-title {
font-size: 20px;
font-weight: 600;
color: #333;
margin-bottom: 24px;
padding-bottom: 16px;
border-bottom: 1px solid #f0f0f0;
}
.layui-form-label {
width: 100px;
}
.layui-input-block {
margin-left: 130px;
}
.layui-form-item {
margin-bottom: 24px;
}
@media (max-width: 768px) {
.layui-form-label {
width: 80px;
}
.layui-input-block {
margin-left: 110px;
}
}
</style>
<script>
layui.use(['form', 'layer'], function(){
var form = layui.form;
var layer = layui.layer;
// 监听表单提交
form.on('submit(savePassword)', function(data){
// 验证两次密码是否一致
if(data.field.newPassword !== data.field.confirmPassword) {
layer.msg('两次输入的密码不一致', {icon: 2});
return false;
}
// 发送AJAX请求修改密码
fetch('/index/user/changePassword', {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify(data.field)
})
.then(response => response.json())
.then(data => {
if(data.code === 0) {
layer.msg('密码修改成功', {icon: 1});
// 清空表单
document.querySelector('form').reset();
} else {
layer.msg(data.msg || '修改失败', {icon: 2});
}
})
.catch(error => {
layer.msg('修改失败,请重试', {icon: 2});
});
return false;
});
});
</script>