2026-01-29 17:51:13 +08:00
|
|
|
<!DOCTYPE html>
|
|
|
|
|
<html lang="zh-CN">
|
2026-01-28 10:16:06 +08:00
|
|
|
<head>
|
2026-01-29 17:51:13 +08:00
|
|
|
<meta charset="utf-8" />
|
|
|
|
|
<meta name="renderer" content="webkit|ie-comp|ie-stand">
|
|
|
|
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
|
|
|
|
<meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no">
|
|
|
|
|
<meta http-equiv="Cache-Control" content="no-siteapp">
|
|
|
|
|
<title>登录 - 生长激素缺乏预测模型后台</title>
|
2026-01-28 10:16:06 +08:00
|
|
|
<link rel="stylesheet" type="text/css" href="/static/adminghd/css/style.css" />
|
|
|
|
|
<link rel="stylesheet" type="text/css" href="/static/adminghd/css/login.css" />
|
2026-01-29 17:51:13 +08:00
|
|
|
<style>
|
|
|
|
|
.login-wrap { min-height: 100vh; display: flex; align-items: center; justify-content: center; background: linear-gradient(135deg, #11998e 0%, #38ef7d 50%, #06beb6 100%); padding: 20px; box-sizing: border-box; }
|
|
|
|
|
.login-card { width: 100%; max-width: 400px; background: #fff; border-radius: 16px; box-shadow: 0 20px 60px rgba(0,0,0,0.2); overflow: hidden; }
|
|
|
|
|
.login-card .login-header { padding: 36px 24px 24px; text-align: center; border-bottom: 1px solid #f0f0f0; }
|
|
|
|
|
.login-card .login-title { font-size: 18px; font-weight: 600; color: #1f2d3d; line-height: 1.5; margin: 0; }
|
|
|
|
|
.login-card .login-body { padding: 32px 28px 40px; }
|
|
|
|
|
.login-card .form-item { margin-bottom: 22px; }
|
|
|
|
|
.login-card .form-item input { width: 100%; height: 48px; padding: 0 16px; border: 1px solid #e0e0e0; border-radius: 8px; font-size: 15px; color: #333; background: #fafafa; box-sizing: border-box; transition: border-color .2s, background .2s; }
|
|
|
|
|
.login-card .form-item input::placeholder { color: #aaa; }
|
|
|
|
|
.login-card .form-item input:focus { outline: none; border-color: #11998e; background: #fff; }
|
|
|
|
|
.login-card .form-item .warning { display: block; margin-top: 6px; font-size: 12px; color: #e4393c; min-height: 18px; }
|
|
|
|
|
.login-card .btn-login { width: 100%; height: 48px; border: none; border-radius: 8px; font-size: 16px; font-weight: 500; color: #fff; background: linear-gradient(135deg, #11998e 0%, #38ef7d 100%); cursor: pointer; transition: opacity .2s, transform .05s; }
|
|
|
|
|
.login-card .btn-login:hover { opacity: 0.95; }
|
|
|
|
|
.login-card .btn-login:active { transform: scale(0.99); }
|
|
|
|
|
#cover.modal { display: none !important; line-height: 100vh; text-align: center; position: fixed; top: 0; right: 0; bottom: 0; left: 0; background: rgba(0,0,0,0.6); z-index: 9999; color: #fff; font-size: 18px; }
|
|
|
|
|
#cover.modal.show { display: flex !important; align-items: center; justify-content: center; }
|
|
|
|
|
</style>
|
2026-01-28 10:16:06 +08:00
|
|
|
</head>
|
2026-01-29 17:51:13 +08:00
|
|
|
<body>
|
|
|
|
|
<div class="login-wrap">
|
|
|
|
|
<div class="login-card">
|
|
|
|
|
<div class="login-header">
|
|
|
|
|
<h1 class="login-title">生长激素缺乏预测模型后台</h1>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="login-body">
|
|
|
|
|
<form method="post" id="agent_login" name="login">
|
|
|
|
|
<div class="form-item">
|
|
|
|
|
<input type="text" id="username" name="username" placeholder="请输入账号" value="" autocomplete="username" />
|
|
|
|
|
<span id="checkusername" class="warning"></span>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="form-item">
|
|
|
|
|
<input type="password" style="width:0;height:0;border:none;position:absolute;opacity:0;" name="" tabindex="-1" />
|
|
|
|
|
<input type="password" autocomplete="off" id="admin_password" name="password" placeholder="请输入密码" />
|
|
|
|
|
<span id="checkpassword" class="warning"></span>
|
|
|
|
|
</div>
|
|
|
|
|
<div class="form-item" style="margin-bottom:0;margin-top:28px;">
|
|
|
|
|
<button type="submit" name="dologinbtn" class="btn-login" onclick="return checklogin(this.form);">立即登录</button>
|
2026-01-28 10:16:06 +08:00
|
|
|
<input type="hidden" name="loginsubmit" value="true" />
|
2026-01-29 17:51:13 +08:00
|
|
|
</div>
|
|
|
|
|
</form>
|
2026-01-28 10:16:06 +08:00
|
|
|
</div>
|
2026-01-29 17:51:13 +08:00
|
|
|
</div>
|
2026-01-28 10:16:06 +08:00
|
|
|
</div>
|
2026-01-29 17:51:13 +08:00
|
|
|
<div id="cover" class="modal" style="display:none !important;">身份获取中...</div>
|
2026-01-28 10:16:06 +08:00
|
|
|
|
2026-01-29 17:51:13 +08:00
|
|
|
<script type="text/javascript" src="/static/adminghd/js/jquery.js"></script>
|
|
|
|
|
<script>
|
|
|
|
|
var _login_time = -1;
|
|
|
|
|
var _user_type = '';
|
|
|
|
|
function checklogin(form){
|
|
|
|
|
var phonenumFlg = true;
|
|
|
|
|
var pwdFlg = true;
|
|
|
|
|
if(!form.username.value || form.username.value.trim() === ''){
|
|
|
|
|
$('#checkusername').text('账号不能为空').addClass("warning");
|
|
|
|
|
phonenumFlg = false;
|
|
|
|
|
} else {
|
|
|
|
|
$('#checkusername').empty();
|
|
|
|
|
}
|
|
|
|
|
if(!form.password.value || form.password.value === ''){
|
|
|
|
|
$('#checkpassword').text('密码不能为空').addClass("warning");
|
|
|
|
|
pwdFlg = false;
|
|
|
|
|
} else {
|
|
|
|
|
$('#checkpassword').empty();
|
|
|
|
|
}
|
|
|
|
|
if(phonenumFlg && pwdFlg){
|
|
|
|
|
$("#agent_login").off('submit').on("submit", function(event) {
|
|
|
|
|
event.preventDefault();
|
|
|
|
|
var $cover = $('#cover');
|
|
|
|
|
$cover.addClass('show').css('display','flex');
|
|
|
|
|
$.ajax({
|
|
|
|
|
type: "POST",
|
|
|
|
|
url: "/adminghd/Login/login",
|
|
|
|
|
data: $(this).serialize(),
|
|
|
|
|
success: function(data) {
|
|
|
|
|
$cover.removeClass('show').hide();
|
|
|
|
|
if(data.status){
|
|
|
|
|
location.replace("/adminghd/login");
|
|
|
|
|
} else {
|
|
|
|
|
alert(data.msg);
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
error: function(jqXHR, textStatus, errorThrown) {
|
|
|
|
|
$cover.removeClass('show').hide();
|
|
|
|
|
console.error("Error: " + textStatus);
|
|
|
|
|
alert('登录请求失败,请稍后重试');
|
|
|
|
|
}
|
|
|
|
|
});
|
2026-01-28 10:16:06 +08:00
|
|
|
});
|
2026-01-29 17:51:13 +08:00
|
|
|
$("#agent_login").submit();
|
|
|
|
|
}
|
|
|
|
|
return false;
|
2026-01-28 10:16:06 +08:00
|
|
|
}
|
2026-01-29 17:51:13 +08:00
|
|
|
</script>
|
|
|
|
|
</body>
|
|
|
|
|
</html>
|