This repository has been archived on 2024-09-30. You can view files and clone it, but cannot push or open issues/pull-requests.
SmartRollCall/app/templates/register.html

151 lines
5.7 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>注册</title>
<link href="static/css/layui.css" rel="stylesheet">
</head>
<body>
<style>
.demo-reg-container {
width: 320px;
margin: 21px auto 0;
}
.demo-reg-item {
margin-bottom: 10px; /* 调整间距 */
}
</style>
<h1 style="text-align:center; color: #16baaa;">注册</h1>
<form class="layui-form">
<div class="demo-reg-container">
<div class="layui-form-item demo-reg-item">
<div class="layui-input-wrap">
<div class="layui-input-prefix">
<i class="layui-icon layui-icon-username"></i>
</div>
<input type="text" name="name" value="" lay-verify="required" placeholder="姓名"
autocomplete="off" class="layui-input" lay-affix="clear">
</div>
</div>
<div class="layui-form-item demo-reg-item">
<div class="layui-input-wrap">
<div class="layui-input-prefix">
<i class="layui-icon layui-icon-cellphone"></i>
</div>
<input type="text" name="number" value="" placeholder="学号X开头/工号G开头"
lay-reqtext="请填写学号/工号" autocomplete="off" class="layui-input" id="reg-number"
lay-verify="customRule">
</div>
</div>
<div class="layui-form-item demo-reg-item">
<div class="layui-input-wrap">
<div class="layui-input-prefix">
<i class="layui-icon layui-icon-password"></i>
</div>
<input type="password" name="password" value="" lay-verify="required" placeholder="密码"
autocomplete="off" class="layui-input" id="reg-password" lay-affix="eye">
</div>
</div>
<div class="layui-form-item demo-reg-item">
<div class="layui-input-wrap">
<div class="layui-input-prefix">
<i class="layui-icon layui-icon-password"></i>
</div>
<input type="password" name="confirmPassword" value="" lay-verify="required|confirmPassword"
placeholder="确认密码" autocomplete="off" class="layui-input" lay-affix="eye">
</div>
</div>
<div class="layui-form-item">
<button class="layui-btn layui-btn-fluid" type="submit" lay-submit lay-filter="btnRegister">注册</button>
</div>
</div>
</form>
<script src="static/layui.js"></script>
<script src="static/jquery.min.js"></script>
<script>
layui.use(function () {
var $ = layui.$;
var form = layui.form;
var layer = layui.layer;
var util = layui.util;
form.verify({
confirmPassword: function (value, item) {
var passwordValue = $('#reg-password').val();
if (value !== passwordValue) {
return '两次密码输入不一致';
}
},
customRule: function (value, item) {
// 首先检查是否以X或G开头
if (!value.startsWith('X') && !value.startsWith('G')) {
return '学号必须以X开头工号必须以G开头';
}
// 如果以X开头检查长度是否为13位
if (value.startsWith('X') && value.length !== 13) {
return '学号长度必须为13位';
}
// 如果以G开头检查长度是否为5位
if (value.startsWith('G') && value.length !== 5) {
return '工号长度必须为5位';
}
}
});
layui.use(['form', 'layer'], function () {
var form = layui.form;
var layer = layui.layer;
// 监听注册表单的提交事件
form.on('submit(btnRegister)', function (data) {
// 构建要提交的数据对象
var postData = {
name: data.field.name, // 昵称
number: data.field.number, // 手机号
password: data.field.password, // 密码
};
// 发送AJAX POST请求
console.log("Sending AJAX request to /register", postData);
$.ajax({
type: "POST",
url: "/register", // 修改为你的注册接口
contentType: "application/json",
data: JSON.stringify(postData), // 将数据转为JSON字符串
dataType: 'json',
success: function (response) {
// 根据返回的结果进行操作
if (response.success) {
layer.msg('注册成功!', {
time: 2000 //2秒关闭如果不配置默认是3秒
}, function () {
// 关闭后执行的回调函数
window.location.href = '/';
});
} else {
// 显示错误信息
layer.alert('注册失败: ' + response.message);
}
},
error: function () {
layer.alert('注册请求失败');
}
});
return false; // 阻止表单的默认提交
});
});
});
</script>
</body>
</html>
xw