Jsp Ajax之模拟用户注册

举报
tea_year 发表于 2021/12/30 01:14:42 2021/12/30
【摘要】 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%><%String path = request.getContextPath();String basePath = request.getScheme()+"://"+request...

  
  1. <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
  2. <%
  3. String path = request.getContextPath();
  4. String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
  5. %>
  6. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
  7. <html>
  8. <head>
  9. <base href="<%=basePath%>">
  10. <title>My JSP 'regUser.jsp' starting page</title>
  11. <meta http-equiv="pragma" content="no-cache">
  12. <meta http-equiv="cache-control" content="no-cache">
  13. <meta http-equiv="expires" content="0">
  14. <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
  15. <meta http-equiv="description" content="This is my page">
  16. <script type="text/javascript">
  17. var xhr;
  18. //创建Xhr对象的函数;
  19. function createXhr(){
  20. try{
  21. //普通方式;
  22. return new XMLHttpRequest();
  23. }catch(e){
  24. //异常,则另外一种方式;
  25. return new ActiveXObject("Microsoft.XMLHTTP");
  26. }
  27. }
  28. //用户名,文本框失去焦点处理函数;
  29. function checkUser(){
  30. xhr=createXhr();
  31. //得到文本框中输入的内容;
  32. var username=document.getElementById("username").value;
  33. //设置回调函数;
  34. xhr.onreadystatechange=callback;
  35. //alert(username);
  36. //设置请求方式和url,因为是get方式,请求数据直接在url的后面;
  37. xhr.open("get","checkUserAction?username="+username);
  38. //发送请求;
  39. xhr.send(null);
  40. }
  41. function callback(){
  42. //判断请求完成,并且成功返回;
  43. if(xhr.readyState==4&&xhr.status==200){
  44. var msg=document.getElementById("msg");
  45. var res=xhr.responseText;
  46. //alert(res);
  47. //根据响应返回的数据,进行页面更新;
  48. if(res=="true"){
  49. msg.innerHTML='用户名已经存在';
  50. }else{
  51. msg.innerHTML='用户名可以注册';
  52. }
  53. }
  54. }
  55. </script>
  56. </head>
  57. <body>
  58. <form action="regAction" method="post"> 
  59. 账户:<input type='text' id='username' name='username' οnblur='checkUser()'/><span id='msg'></span><br/>
  60. 密码:<input type='password' name='userpwd'><br/>
  61. 邮箱:<input type='text' name='email'><br/>
  62. 地址:<input type='text' name='address'><br/>
  63. <input type='submit' value='注册'/>
  64. </form>
  65. </body>
  66. </html>

响应的Servlet代码:


  
  1. package web;
  2. import java.io.IOException;
  3. import java.io.PrintWriter;
  4. import javax.servlet.ServletException;
  5. import javax.servlet.http.HttpServlet;
  6. import javax.servlet.http.HttpServletRequest;
  7. import javax.servlet.http.HttpServletResponse;
  8. public class CheckUserServlet extends HttpServlet {
  9. @Override
  10. protected void doGet(HttpServletRequest req, HttpServletResponse resp)
  11. throws ServletException, IOException {
  12. resp.setContentType("text/html;charset=utf-8");
  13. PrintWriter out=resp.getWriter();
  14. //获取提交数据;
  15. String username=req.getParameter("username");
  16. if("admin".equals(username)){
  17. out.print("true");
  18. }else{
  19. out.print("false");
  20. }
  21. out.close();
  22. }
  23. @Override
  24. protected void doPost(HttpServletRequest req, HttpServletResponse resp)
  25. throws ServletException, IOException {
  26. this.doGet(req, resp);
  27. }
  28. }


文章来源: aaaedu.blog.csdn.net,作者:tea_year,版权归原作者所有,如需转载,请联系作者。

原文链接:aaaedu.blog.csdn.net/article/details/53243042

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。