要求:注册页面中 仅验证 不注册
前台代码——创建 注册页面jsp:
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<head>
<title>Title</title>
<script src="webjars/jquery/3.3.1-2/jquery.min.js"></script>
<script>
/**
* 用户名验证: 前2在前台script验证,后1用ajax
* 不为空
* 长度5-10
* 没被占用*/
function isusername() {
var username= $("#username").val();
//判断空否
if(username==null||username==""){
//出现提示
$("#username2").text("用户名不可为空").css("color","red");
return;//弹出验证方法
}
//判断长度
if(username.length<5||username.length>10){
//出现提示
$("#username2").text("不合法,长度要在5-10之间").css("color","blue");
return;
}
//用ajax传用户名 给servlet查询
$.ajax({
type:"post",//也可是get
url:"registServ",//跳转的servlet
data:{"username":username},//传递的数据 键值对,不可略就算没得传也要写data:{}
dataType:JSON,//设后台传来的答案格式 为json,不为则进入error
success:function (jsonhm) {//后台返回的 答案
if(jsonhm.info!=null){
$("#username2").text(jsonhm.info).css("color","pink");
}
},
error:function () {
$("#username2").text("后台返回给ajax时发生错误");
}
});
}
</script>
</head>
<body>
<form>
用户名<input type="text" id="username" onblur="isuse在这里插入代码片rname()"/> <span id="username2"></span><br/>
密码<input type="text" id="pwd"/><span id="pwd2"></span><br/>
重复密码<input type="text" id="repwd"/> <span id="repwd2"></span><br/>
<input type="submit" value="提交"/>
</form>
</body>
</html>
后台代码——创建servlet:
@WebServlet("registServ")
public class RegistServ extends HttpServlet {
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
String username = req.getParameter("username");//取出ajax发来的用户名
//创建表格对应的实体类,调用service的查询方法 service调dao层 此处都省略
//用键值对集合 模拟 存入前台ajax要的答案
HashMap<String,String> hm=new HashMap<>();
String info=null;
if(username.equals("nancy")){
info="用户名已被占用";
hm.put("info",info);
}
resp.getWriter().print(JSON.toJSON(hm));//转为前台ajax要的json格式
}
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doPost(req, resp);
}
}
(由于pom.xml中导入maven依赖有问题,没有测试)
小结:
1.首先,你需要写个jsp网页,能展示出注册的页面就算是完成第一步了。
2.然后,把在前台可以验证的在js中验证了,在后台验证的你需要将你写的网页数据提交到服务器,并且完成跳转和提示信息等操作,jquery提供了ajax函数,你可以利用它来实现与服务器的异步通信。代码如上。
3.其次,你在写好ajax之后,需要在后台写个处理函数,将网页传过来的数据处理,然后返回它需要的信息。
版权声明:本文为weixin_45881192原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。