ajax 用户已注册,Ajax检测用户名是否已经注册
程序功能
当用户名输入完成(即用户名输入框失去焦点),利用Ajax检测用户名是否已经注册!
实现过程
利用Ajax向CheckUserServlet发送请求,判断该用户名是否可用。这里只是为了演示Ajax的用法,就不访问数据库了,直接设置一些用户名就好了,模拟一下即可。
关于中文编码的处理
坑爹,在javascript中传递中文参数,需要先编码,然后解码。详细见JavaScript利用URL向后台传入中文参数乱码问题解决之道。
运行截图
代码实例
JSP页面
pageEncoding="UTF-8"%>
检查用户名是否唯一
function checkUser(username) {
if (username.value == "") {
alert("请输入用户名!");
username.focus();
return;
} else {
createRequest('CheckUserServlet?user='+encodeURI(encodeURI(username.value)));
}
}
function createRequest(url) {
http_request = false;
if (window.XMLHttpRequest) {
http_request = new XMLHttpRequest();
} else if (window.ActiveXObject) {
try {
http_request = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
http_request = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {
}
}
}
if (!http_request) {
alert("不能创建XMLHttpRequest对象实例!");
return false;
}
//alert("创建成功!");
http_request.onreadystatechange = getResult;
http_request.open('GET', url, true);
http_request.send(null);
}
function getResult() {
if (http_request.readyState == 4) { //请求已经完成
if (http_request.status == 200) { //请求成功
document.getElementById("msg").innerHTML = http_request.responseText;
} else {
alert("你请求的页面有错误!");
}
}
}
用户名:
密 码:
检查是非已经注册的工具类
package cn.edu.pzhu.servlet.util;
public class UserUtils {
private static String[] userList = {"张三", "李四", "Tom", "Jerry"};
public static boolean checkUser(String username) {
boolean ok = true;
for (int i = 0; i < userList.length; i++) {
if (username.equals(userList[i])) {
ok = false;
break;
}
}
return ok;
}
}
servlet处理
package cn.edu.pzhu.servlet;
import java.io.IOException;
import java.io.PrintWriter;
import java.net.URLDecoder;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.jasper.tagplugins.jstl.core.Out;
import cn.edu.pzhu.servlet.util.UserUtils;
/**
* Servlet implementation class CheckUserServlet
*/
@WebServlet("/CheckUserServlet")
public class CheckUserServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public CheckUserServlet() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String username = request.getParameter("user");
//解码
username = URLDecoder.decode(username, "UTF-8");
System.out.println(username);
PrintWriter out = response.getWriter();
if (UserUtils.checkUser(username)) {
out.print("该用户名可用!");
} else {
out.print("该用户名不可用!");
}
//request.getRequestDispatcher("index.jsp").forward(request, response);
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
}
}
如有不当之处欢迎指出!
ajax 用户已注册,Ajax检测用户名是否已经注册相关推荐
- ajax用户名注册自动刷新,ajax+jsp实现 无刷新页面下注册时检测用户名是否已存在...
当前位置:编程学习 > JAVA >> ajax+jsp实现 无刷新页面下注册时检测用户名是否已存在 如题:ajax+jsp实现 无刷新页面下注册时检测用户名是否已存在 求大神们赐教 ...
- 如何在注册表里计算机用户名,可以通过注册表修改电脑的密码 ?怎么做的?
可以通过注册表修改电脑的密码 ?怎么做的?以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 可以通过注册表修改电脑的密码 ...
- ajax用户登录模块,ajax用户注册模块
ajax用户注册模块 内容精选 换一换 用户输入码流给VDEC解码,某些帧或所有帧都没有触发回调函数,用户收不到解码结果.码流中某些帧是坏帧,导致语法解析不出这些帧的含义,或者解码这些帧失败,从而不调 ...
- asp.net mvc ajax get读取服务器数据 ,post检测用户名 实例讲解下载
[实例简介] asp.net mvc ajax 读取服务器两种方式实例以及 ajax post方式检测用户名是否可用实例 文件:590m.com/f/25127180-494085336-22b65d ...
- 什么是Ajax ? 为什么要学习Ajax jQuery中的Ajax怎么使用 10
什么是Ajax Ajax 的全称是 Asynchronous JavaScript And XML (异步 JavaScript 和 xml ) 通俗理解:在网页中利用 XMLHttpRequest ...
- windows系统下注册和检测 ocx,dll控件的问题.........
in fact ...ocx控件注册和检测其实是对注册表中的相应的项注册和检测,当然注册表那些操作函数就不能不用到: 注册ocx控件无非两句话的功夫, 1.在系统目录下即:C:/windows/sys ...
- 使用jquery ajax 实现用户的用户名注册验证,如果该用户已存在则提示该用户已存在
使用jquery ajax 实现用户的用户名注册验证,如果该用户已存在则提示该用户已存在 jQuery AJAX 基本使用方法 接口使用 http://180.76.117.80:8080/AjaxS ...
- php异步检测用户名是否已经存在,AJAX实例-检测用户名是否存在
用户注册时,需要填写个人信息,其中包括用户名.当用户输入完成时,JavaScript 需要及时检测用户名是否存在,如果存在给出提示,请用户更换用户名. 当然,这个步骤可以在用户提交表单以后由后台程序检 ...
- AJAX:校验用户名是否被注册
1. ajax是什么? * asynchronous javascript and xml:异步的js和xml * 它能使用js访问服务器,而且是异步访问! * 服务器给客户端的响应一般是整个页面,一 ...
最新文章
- @Controller和@RestController的区别?
- 实操教程|Pytorch常用损失函数拆解
- Loading class `com.mysql.jdbc.Driver'. This is deprecated警告处理
- 【2017-05-30】WebForm文件上传。从服务端删除文件
- extjs4mvc增删改查_asp.net下利用MVC模式实现Extjs表格增删改查
- 【scala初学】scala 控制 for while match if
- 在Python3中将字符串转换为字节的最佳方法
- 今天的被子照样不叠的飞鸽传书
- UITextField 文本字段控件 -- IOS (解决键盘遮住View及密文設定的问题)(实例)
- m1 MBA配置python及Numpy科学计算环境
- JLOI2015 城池攻占
- day042 css 选择器
- [leetcode] (周赛)869. 重新排序得到 2 的幂
- Kali系列之网卡地址配置
- qq语音聊天 java_用Java语言实现QQ部分聊天功能
- 荣耀 MagicBook V 14 2022款评测
- 数商云采购管理系统支付结算功能详解,实现建筑工程企业采购业务智能化管理
- 牛客网视频总结5(二叉树)
- Winodws 快速添加开机启动项
- JZOJ 4745. 看电影