分享学做的一个jsp注册页面
分享一个自己学习时,用bootstrap,多方搜索做的注册页面,包括页面的非空验证。导入相关的bootstrap的js和css文件就可以了。背景很丑,可以自己换一个。后面进一步完善<( ̄︶ ̄)↗[GO!]
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>bootstrap注册页面</title>
<link rel="stylesheet" type="text/css" href="css/bootstrap.min.css" />
<link rel="stylesheet" type="text/css" href="css/bootstrap-theme.min.css" />
<script src="js/jquery-1.12.0.min.js" type="text/javascript" charset="utf-8"></script>
<script src="js/bootstrap.min.js" type="text/javascript" charset="utf-8"></script>
<script src="js/jquery.validate.min.js" type="text/javascript"></script>
<script>
//自定义校验规则
$.validator.addMethod(
// 规则的名称
"checkUsername",
// 校验的函数
function(value, element, params) {
// 参数value代表输入的内容,element代表被校验的元素对象,params代表规则对应的参数值
// 目的:对输入的username进行ajax异步校验
// 定义一个标志
var flag = true;
$.ajax({
"async" : false,// 是否异步
"url" : "${pageContext.request.contextPath}/checkUsername",// 提交地址
"data" : {
"username" : value
},// 传输的数据
"type" : "POST",// 提交方式
"dataType" : "json",// 返回的数据类型
"success" : function(data) {// 成功后的回调函数
flag = data.isExist;
alert(flag);
}
});
// 返回false代表该校验器不通过
return !flag;
});
$(function() {
$("#registForm").validate({
rules : {
"username" : {
"required" : true,
"checkUsername" : true
},
"password" : {
"required" : true,
"rangelength" : [ 6, 12 ]
},
"repassword" : {
"required" : true,
"rangelength" : [ 6, 12 ],
"equalTo" : "#password"
},
"email" : {
"required" : true,
"email" : true,
},
"sex" : {
"required" : true
}
},
messages : {
"username" : {
"required" : "用户名不能为空",
"checkUsername" : "该用户名已存在"
},
"password" : {
"required" : "密码不能为空",
"rangelength" : "密码长度为6-12位"
},
"repassword" : {
"required" : "确认密码不能为空",
"rangelength" : "密码长度为6-12位",
"equalTo" : "两次输入的密码不一致"
},
"email" : {
"required" : "邮箱不能为空",
"email" : "邮箱格式不正确",
}
}
});
});
</script>
<style type="text/css">
body{
/*background-image: url(img/bg8.jpg);*/
/*background-repeat: no-repeat;*/
/*background-color: #191970;*/
background: radial-gradient(ellipse closest-side,
#00CC66, #006666 20%, #0066CC 50%, #0033CC);
}
label{
text-align: justify;
text-align-last: justify;
line-height: 35px;
}
.error {
color: red;
}
</style>
</head>
<body>
<div class="container">
<div class="col-md-4"></div>
<div class="col-md-6 row" style="margin-top: 50px;background-color: whitesmoke;border-radius: 5px;">
<div style="margin-top: 30px;margin-bottom: 30px;margin-right: 20px;">
<form id="registForm" action="${pageContext.request.contextPath}/register" method="post">
<div class="form-group row">
<label for="username" class="col-sm-2 col-form-label">用户名</label>
<div class="col-sm-10"><input type="text" class="form-control" id="username" name="username" placeholder="请输入账号"> </div>
</div>
<div class="form-group row">
<label for="password" class="col-sm-2 col-form-label">密码</label>
<div class="col-sm-10"><input type="password" class="form-control" id="password" name="password" placeholder="请输入密码"></div>
</div>
<div class="form-group row">
<label for="password" class="col-sm-2 col-form-label">确认密码</label>
<div class="col-sm-10"><input type="password" class="form-control" id="repassword" name="repassword" placeholder="请确认密码"></div>
</div>
<div class="form-group row">
<label for="password" class="col-sm-2 col-form-label">邮箱</label>
<div class="col-sm-10"><input type="email" class="form-control" name="email" placeholder="请输入邮箱"></div>
</div>
<div class="form-group row">
<label for="password" class="col-sm-2 col-form-label">姓名</label>
<div class="col-sm-10"><input type="text" class="form-control" name="user" placeholder="请输入姓名"></div>
</div>
<div class="form-group row">
<label for="sex" class="col-sm-2 col-form-label">性别</label>
<div class="col-sm-10">
<div class="form-check form-check-inline" style="line-height: 35px;">
<input class="form-check-input" type="radio" name="sex" id="sex1" value="male" checked>男
<input class="form-check-input" type="radio" name="sex" id="sex2" value="female">女
<label class="error" for="sex" style="display: none;">性别必须勾选</label>
</div>
</div>
</div>
<div class="form-group row">
<label for="password" class="col-sm-2 col-form-label">验证码</label>
<div class="col-sm-8"><input type="text" class="form-control" id="repassword" placeholder="请输入验证码"></div>
<div class="col-sm-2"><img src="img/bg3.jpg" height="30px"/></div>
</div>
<div class="form-group row">
<div class="col-sm-2"></div>
<!--给按钮加上btn-lg的class就是大号的按钮-->
<div class="col-sm-10"><input type="submit" value="我要注册" class="btn btn-primary btn-block" /></div>
</div>
<div class="form-group row">
<div class="col-sm-2"></div>
<div class="col-sm-5" style="float: left;">已经有账号了?</div>
<div class="col-sm-5"><a href="login.html" style="float: right;">直接登录</a></div>
</div>
</form>
</div>
</div>
<div class="col-md-2"></div>
</div>
</body>
</html>
效果如下:
分享学做的一个jsp注册页面的更多相关文章
- 一个JSP结果页面tomcat内存溢出
如今,试验组的同事寻找新能源我看到一个奇怪的现象.一个tomcat应用,内只有一个简单的jsp页面,和这个jsp无论是什么页java代码(我想用这个jsp在她的网页测试server一对tomcat的最 ...
- 分享自己做的一个指定进程以及线程长时间cpu监控的工具
前言: 前面给大家分享过一个工作中用到的编译拷贝脚本,其实工作中还有一些其他工具的使用,今天再来分享一个自己纯手工的CPU监控的脚本.大家可以结合上篇文章与本篇文章一起学习shell. 主要实现功能: ...
- jsp注册页面的省份联动(网上copy别人的,然后自己弄了一下才知道怎么用)
首先写一个js里面是所有的省份一些七七八八的东西,直接复制黏贴过去就好了. var addressInit = function(_cmbProvince, _cmbCity, _cmbArea, d ...
- 做的一个HTML表白页面
页面地址: http://myspace123.qiniudn.com/love/index.html 目录文件结构: index.html <html xmlns="http://w ...
- jsp注册页面验证,easyui的jsp+js表单验证
1.1下面的代码是写在Js里面的,就直接写进去不用什么其他东西,这样一个表单验证就好了(1.2图) $.extend($.fn.validatebox.defaults.rules, { phone: ...
- 今天用css做了一个QQ登录页面
<!doctype html> <html> <head> <meta charset="utf-8"> <title> ...
- Jsp注册页面身份证验证
<!--身份证验证 --><script type="text/javascript">function isCardNo(Idcardnumber) { ...
- 我的第一个jsp程序-实现注册登录留言功能
1,注册功能,包括两个页面 zhuce.jsp注册页面 <%@ page language="java" contentType="text/html; chars ...
- 用js给闺女做了一个加减乘除的html
下班回家用二十分钟给闺女做了一个加减乘除的页面,顺便记录下代码,时间仓促,后期再来修改吧 目录结构 -yq --menu.html --yq.html --yq50.html --yq70.html ...
随机推荐
- 用java实现文件的断点续传并发下载
需求: 支持文件批量下载.现在有很多小图片需要批量下载,不希望在服务器打包下载. 支持大文件断点下载.比如下载10G的文件. PC端全平台支持.Windows,macOS,Linux 全浏览器支持.i ...
- kibana使用日志时间进行排序
kibana默认的是按照客户端的采集时间(@timestamp)进行排序,这往往不是我们所需要的,我们需要的是对日志实际时间进行排序,要解决这个问题,有很多种方法,可以在elasticsearch建立 ...
- phpjm解密程序,也适用于其他混淆加密的破解
<?php $file = 'plugin.php'; //要破解的文件 $fp = fopen($file, 'r'); $str = fread($fp, filesize($file)); ...
- docker 搭建gitlab
https://docs.gitlab.com/omnibus/docker/ https://blog.csdn.net/m0_37444820/article/details/81147452 h ...
- day36—javascript对表格table的操作应用(一)
转行学开发,代码100天——2018-04-21 今天记录一下,JavaScript对表格table的操作应用,包括表格元素的获取,创建,删除等. 一个普通的完整表格包括以下几个部分:table-&g ...
- CentOS 7.3 安装MySQL 5.7并修改初始密码
在CentOS 7.3 下安装MySQL 5.7并修改初始密码,Windows下安装MySQL 5.7 见 http://www.linuxidc.com/Linux/2017-11/148521.h ...
- Python——GUI可视化
import sys from PyQt5.QtCore import * from PyQt5.QtGui import * from PyQt5.QtWidgets import * class ...
- LeetCode 337. House Robber III 动态演示
每个节点是个房间,数值代表钱.小偷偷里面的钱,不能偷连续的房间,至少要隔一个.问最多能偷多少钱 TreeNode* cur mp[{cur, true}]表示以cur为根的树,最多能偷的钱 mp[{c ...
- Maven入门学习 (一)
学习Java 的同学就一定会学习Maven, 那么Maven为什么会得到大量用户的使用呢?它是用来干什么的呢 ?接下来就来介绍 Q:Maven的作用? (1)Maven可以自动化构建项目,可以从清理. ...
- github信息安全开源课
尽可能的减少信息差:兄弟们,该知足了,这些资源非常的宝贵了. ### github探索-主题-令人敬畏的名单 令人敬畏的名单: https://github.com/topics/awesome 进入 ...