v1.0.10
This commit is contained in:
@@ -0,0 +1,97 @@
|
||||
/**
|
||||
* login.js - 登录页逻辑(滑块验证 + 表单提交 + 找回密码)
|
||||
*/
|
||||
$(function () {
|
||||
var sliderToken = null;
|
||||
var slider = new SliderVerify('#slider', function (token) {
|
||||
sliderToken = token;
|
||||
$('#login-btn').prop('disabled', false);
|
||||
});
|
||||
|
||||
// 回车提交
|
||||
$('#password').on('keydown', function (e) {
|
||||
if (e.keyCode === 13) doLogin();
|
||||
});
|
||||
|
||||
$('#login-btn').on('click', doLogin);
|
||||
|
||||
function doLogin() {
|
||||
var username = $.trim($('#username').val());
|
||||
var password = $('#password').val();
|
||||
|
||||
if (!username) { showMsg('请输入账号', 'error'); return; }
|
||||
if (!password) { showMsg('请输入密码', 'error'); return; }
|
||||
if (!sliderToken) { showMsg('请先完成滑块验证', 'error'); return; }
|
||||
|
||||
$.ajax({
|
||||
url: BASE_URL + 'auth/login.php',
|
||||
method: 'POST',
|
||||
dataType: 'json',
|
||||
headers: { 'X-Requested-With': 'XMLHttpRequest' },
|
||||
data: { username: username, password: password, slider_token: sliderToken }
|
||||
}).done(function (resp) {
|
||||
if (resp.code === 0) {
|
||||
showMsg('登录成功,正在跳转...', 'success');
|
||||
setTimeout(function () {
|
||||
location.href = 'dashboard.html';
|
||||
}, 500);
|
||||
} else {
|
||||
showMsg(resp.msg || '登录失败', 'error');
|
||||
slider.reset();
|
||||
sliderToken = null;
|
||||
$('#login-btn').prop('disabled', true);
|
||||
}
|
||||
}).fail(function () {
|
||||
showMsg('网络错误,请重试', 'error');
|
||||
});
|
||||
}
|
||||
|
||||
function showMsg(msg, type) {
|
||||
$('#login-msg').attr('class', 'login-msg ' + type).text(msg);
|
||||
}
|
||||
|
||||
// 找回密码弹窗
|
||||
$('#btn-forgot').on('click', function () {
|
||||
var idx = layer.open({
|
||||
type: 1,
|
||||
title: '找回密码',
|
||||
area: ['380px', 'auto'],
|
||||
content:
|
||||
'<div style="padding:20px 24px;">' +
|
||||
' <div class="form-item" style="margin-bottom:14px;">' +
|
||||
' <label>登录账号</label>' +
|
||||
' <input type="text" id="f-username" style="width:100%;height:38px;border:1px solid #d9dee8;border-radius:4px;padding:0 10px;" placeholder="请输入登录账号">' +
|
||||
' </div>' +
|
||||
' <div class="form-item" style="margin-bottom:14px;">' +
|
||||
' <label>联系邮箱</label>' +
|
||||
' <input type="text" id="f-email" style="width:100%;height:38px;border:1px solid #d9dee8;border-radius:4px;padding:0 10px;" placeholder="请输入注册邮箱">' +
|
||||
' </div>' +
|
||||
' <div id="f-msg" style="display:none;padding:8px 10px;border-radius:4px;font-size:13px;margin-bottom:10px;"></div>' +
|
||||
'</div>',
|
||||
btn: ['提交', '取消'],
|
||||
yes: function (idx) {
|
||||
var username = $.trim($('#f-username').val());
|
||||
var email = $.trim($('#f-email').val());
|
||||
if (!username || !email) {
|
||||
$('#f-msg').attr('style', 'display:block;padding:8px 10px;border-radius:4px;font-size:13px;margin-bottom:10px;background:#fdecea;color:#c0392b;border:1px solid #f5c6cb;').text('请填写账号和邮箱');
|
||||
return;
|
||||
}
|
||||
$.ajax({
|
||||
url: BASE_URL + 'auth/forgot.php',
|
||||
method: 'POST',
|
||||
dataType: 'json',
|
||||
headers: { 'X-Requested-With': 'XMLHttpRequest' },
|
||||
data: { username: username, contact_email: email }
|
||||
}).done(function (resp) {
|
||||
var color = resp.code === 0 ? '#27ae60;background:#eafaf1;border:1px solid #a9dfbf' : '#c0392b;background:#fdecea;border:1px solid #f5c6cb';
|
||||
$('#f-msg').attr('style', 'display:block;padding:8px 10px;border-radius:4px;font-size:13px;margin-bottom:10px;color:' + color).text(resp.msg || '操作完成');
|
||||
if (resp.code === 0) {
|
||||
setTimeout(function () { layer.close(idx); }, 1500);
|
||||
}
|
||||
}).fail(function () {
|
||||
$('#f-msg').attr('style', 'display:block;padding:8px 10px;border-radius:4px;font-size:13px;margin-bottom:10px;color:#c0392b;background:#fdecea;border:1px solid #f5c6cb;').text('网络错误,请重试');
|
||||
});
|
||||
}
|
||||
});
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user