AJAX用于判定用户是否注册

发布时间 - 2026-01-10 22:32:41    点击率:

在很多注册的页面上,我们可能会遇到以下情况,当我们注册用户名的时候可能会提示该用户名已注册,其实现是应用AJAX技术。

首先写一个登陆页面

<html>
<head>
<title></title>
<script type="text/javascript">
var xmlHttp;
var flag;
function createXMLHttp(){
if(window.XMLHttpRequest){
xmlHttp=new XMLHttpRequest();
}else{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
}

function checkUserid(userid){
createXMLHttp();
xmlHttp.open("POST","CheckServlet?userid="+userid);
xmlHttp.onreadystatechange=checkUseridCallback;
xmlHttp.send();
document.getElementById("msg").innerHTML="正在验证。。。";
}

function checkUseridCallback(){
if(xmlHttp.readyState==400){
if(xmlHttp.status==200){
var text=xmlHttp.responseText;
if(text=="true"){
flag=false;
document.getElementById("msg").innerHTML="用户ID重复,无法使用";

}else{
flag=true;
document.getElementById("msg").innerHTML="此用户ID可以注册";
}
}
}
}

function checkForm(){
return flag;
}

</script>
</head>
<body>

<form action="tt.jsp" method="post" onsubmit="return checkForm()">
用户ID <input type="text" name="userid" onblur="checkUserid(this.value)"><span id="msg"></span><br>
姓名:<input type="text" name="name"><br>
密码:<input type="password" name="password"><br>
<input type="button" value="注册">
<input type="reset" value="重置">
</form>
</body>
</html>

随后写一个servlet的Java代码

import java.io.IOException;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class CheckServlet extends HttpServlet{
public static final String DBDRIVER = "oracle.jdbc.OracleDriver";
public static final String DBURL = "jdbc:oracle:thin:@59.173.240.149:1521:heer";
public static final String DBUSER = "hnsyu_dev";
public static final String DBPASS = "hnsyuok";

public void doGet(HttpServletRequest request,HttpServletResponse response)
throws ServletException,IOException{
this.doPost(request, response);
}

public void doPost(HttpServletRequest request,HttpServletResponse response)
throws ServletException,IOException{
request.setCharacterEncoding("gbk");
response.setContentType("text/html");
Connection connection = null;
PreparedStatement preparedStatement = null;
ResultSet resultSet = null;
PrintWriter out = response.getWriter();
String userid = request.getParameter("userid");
try {
Class.forName(DBDRIVER);
connection = DriverManager.getConnection(DBURL, DBUSER, DBPASS);
String sql = "select count(userid) from userdemo where userid=?";
preparedStatement = connection.prepareStatement(sql);
preparedStatement.setString(1,userid);
resultSet = preparedStatement.executeQuery();
if (resultSet.next()) {
if(resultSet.getInt(1)>0){
out.print("false");
System.out.println("true");
}else {
out.print("false");
}
}
out.close();
} catch (Exception e) {
e.printStackTrace();
}finally{
try {
connection.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
}

其中还需要在web.xml中进行配置

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0" 
xmlns="http://java.sun.com/xml/ns/javaee" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
 <display-name></display-name> 
 <welcome-file-list>
  <welcome-file>index.jsp</welcome-file>
 </welcome-file-list>
  <servlet>
 <servlet-name>CheckServlet</servlet-name>
 <servlet-class>CheckServlet</servlet-class>
 </servlet>
 <servlet-mapping>
 <servlet-name>CheckServlet</servlet-name>
 <url-pattern>/CheckServlet</url-pattern>
 </servlet-mapping> 
</web-app>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# AJAX判定用户是否注册  # AJAX判定用户注册  # AJAX用户注册  # jquery ajax 检测用户注册时用户名是否存在  # PHP+Ajax异步通讯实现用户名邮箱验证是否已注册( 2种方法实现)  # JQuery运用ajax注册用户实例(后台asp.net)  # PHP+AJAX实现无刷新注册(带用户名实时检测)  # Asp.net下利用Jquery Ajax实现用户注册检测(验证用户名是否存)  # jquery+ajax实现注册实时验证实例详解  # PHP+Ajax检测用户名或邮件注册时是否已经存在实例教程  # ajax对注册名进行验证检测是否存在于数据库中  # asp ajax注册验证之 防止用户名输入空格  # Ajax+asp应用实例 注册模块  # 表单提交  # 要在  # 当我们  # 还需  # 大家多多  # 该用  # post  # onsubmit  # method  # tt  # jsp  # id  # br  # span  # input  # onblur  # false 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 香港服务器选型指南:免备案配置与高效建站方案解析  js实现获取鼠标当前的位置  成都品牌网站制作公司,成都营业执照年报网上怎么办理?  Laravel的路由模型绑定怎么用_Laravel Route Model Binding简化控制器逻辑  INTERNET浏览器怎样恢复关闭标签页_INTERNET浏览器标签恢复快捷键与方法【指南】  Laravel如何使用Service Container和依赖注入?(代码示例)  Laravel如何实现数据导出到PDF_Laravel使用snappy生成网页快照PDF【方案】  Laravel怎么使用Collection集合方法_Laravel数组操作高级函数pluck与map【手册】  魔毅自助建站系统:模板定制与SEO优化一键生成指南  如何快速搭建高效服务器建站系统?  javascript和jQuery中的AJAX技术详解【包含AJAX各种跨域技术】  如何撰写建站申请书?关键要点有哪些?  企业网站制作这些问题要关注  如何在浏览器中启用Flash_2025年继续使用Flash Player的方法【过时】  Laravel如何处理异常和错误?(Handler示例)  EditPlus中的正则表达式 实战(2)  头像制作网站在线观看,除了站酷,还有哪些比较好的设计网站?  谷歌Google入口永久地址_Google搜索引擎官网首页永久入口  香港服务器网站生成指南:免费资源整合与高速稳定配置方案  如何用wdcp快速搭建高效网站?  如何快速完成中国万网建站详细流程?  Laravel如何使用API Resources格式化JSON响应_Laravel数据资源封装与格式化输出  html文件怎么打开证书错误_https协议的html打开提示不安全【指南】  Laravel如何集成微信支付SDK_Laravel使用yansongda-pay实现扫码支付【实战】  JS中页面与页面之间超链接跳转中文乱码问题的解决办法  HTML透明颜色代码在Angular里怎么设置_Angular透明颜色使用指南【详解】  高防服务器租用首荐平台,企业级优惠套餐快速部署  Linux虚拟化技术教程_KVMQEMU虚拟机安装与调优  瓜子二手车官方网站在线入口 瓜子二手车网页版官网通道入口  个人摄影网站制作流程,摄影爱好者都去什么网站?  Edge浏览器提示“由你的组织管理”怎么解决_去除浏览器托管提示【修复】  如何彻底删除建站之星生成的Banner?  Python高阶函数应用_函数作为参数说明【指导】  javascript中对象的定义、使用以及对象和原型链操作小结  Laravel如何自定义错误页面(404, 500)?(代码示例)  如何用IIS7快速搭建并优化网站站点?  JS碰撞运动实现方法详解  Laravel如何使用Collections进行数据处理?(实用方法示例)  如何在局域网内绑定自建网站域名?  Claude怎样写结构化提示词_Claude结构化提示词写法【教程】  JavaScript如何实现倒计时_时间函数如何精确控制  Laravel怎么自定义错误页面_Laravel修改404和500页面模板  ,南京靠谱的征婚网站?  Laravel辅助函数有哪些_Laravel Helpers常用助手函数大全  Android 常见的图片加载框架详细介绍  北京企业网站设计制作公司,北京铁路集团官方网站?  Android okhttputils现在进度显示实例代码  php json中文编码为null的解决办法  Laravel任务队列怎么用_Laravel Queues异步处理任务提升应用性能  nodejs redis 发布订阅机制封装实现方法及实例代码