AJAX异步校验

前台JS代码

/*异步验证用户名的输入格式以及是否存在*/

function CheckUsername(){

/*取到用户名输入框*/

var nametxt = document.getElementById("username");

/*获取输入的用户名值*/

var username = nametxt.value;

/*获取到装错误信息的span框*/

var sp = document.getElementById("usernameError");

var regex = /^[a-z0-9]{4,12}$/i;

/*创建异步函数*/

var xhr = createXmlHttp();

/*设置监听*/

xhr.onreadystatechange = function()

{

if(xhr.readyState == 4){

if(xhr.status == 200){

/*为信息提示框赋文本*/

sp.innerHTML = xhr.responseText;

/*为信息提示框赋样式*/

sp.className = "infoError";

}

}

}

/*打开链接 · 不加时间戳则会引起浏览器的缓存*/

xhr.open("GET", "${pageContext.request.contextPath}/user_FindByName.action?time="+new Date().getTime()+"&username="+username, true);

/*发送*/

xhr.send();

}

function createXmlHttp(){

var xmlHttp;

try{//Firefox, Opera8.0+, Safari

xmlHttp = new XMLHttpRequest();

} catch(e){

try {//IE

xmlHttp = new ActiveXObject("Msxm12.XMLHTTP");

} catch (e) {}

}

return xmlHttp;

}

后台action代码

/**

* AJAX异步校验用户名

* @return String

* @throws IOException

*/

     public String FindByName() throws IOException{

/*调用service进行查询*/

User existUser = userService.FindByUsername(user.getUsername());

/*获取response对象,向页面输出信息*/

HttpServletResponse response = ServletActionContext.getResponse();

response.setContentType("text/html;charset=UTF-8");

/*判断是否为空*/

if(existUser != null){

//用户名已经存在,不能注册

/*有异常则向上抛出*/

response.getWriter().println("<font color=‘red‘>用户名已存在,不可用!</font>");

} else{

//用户名不存在,可以注册

response.getWriter().println("<font color=‘green‘>用户名可以使用!</font>");

}

/*AJAX操作,不需要页面跳转*/

return NONE;

}

时间: 2024-08-04 22:05:40

AJAX异步校验的相关文章

利用ajax异步校验验证码(转)

利用ajax异步校验验证码 示例结果如图所示 具体步骤如下: step1: jsp页面及js脚本 [html] view plain copy print? <%@page pageEncoding="utf-8" contentType="text/html; charset=utf-8" %> <html> <head> <title>form</title> <script type="

问答项目---登陆账号密码登陆做AJAX异步校验

异步验证管理员帐号方法: /* 异步验证管理员帐号 */ public function checkAccount(){ if(!IS_AJAX){echo "页面不存在";die();}; $where = array( //'account' => $_POST['username'] 'account' => I('post.username') ); if(M('admin')->where($where)->find()){ echo 1; }else

【项目实战】---使用ajax完毕username是否存在异步校验

小伙伴在上网的时候.须要下载或者观看某些视频资料,更或者是在逛淘宝的时候.我们都须要注冊一个用户,当我们填写好各种信息,点击确定的时候.提示username已经存在.小编就想,为什么当我们填写完username的时候,她就自己主动提示username已经存在.我们也不须要浪费那么多感情.直到填写完那么多的信息之后在提示,在小编近期的项目中,就碰到这个问题.我们能够使用ajax完毕username是否存在.今天这篇博客.小编就简单的总结一下,怎样使用ajax来完毕校验,还请小伙伴多多不吝赐教哦`(

基于AJAX用户注册信息异步校验

周末无事,自己写了一个用户注册信息的,异步校验.不多说,直接上源码: check.jsp <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+reque

使用Ajax完成用户名异步校验--【SSH】

1.事件触发--onblur <td><!-- onblur用户离开输入框的时候执行 --> <input type="text" id="username" name="username" class="text" maxlength="20" onblur="checkUsername()"> <span id="span1&quo

Java项目(1)——采用Ajax异步交互技术验证用户代码是否重复

DRP项目中涉及到注册用户的问题.本文讲述的是注册过程中使用Ajax异步交互验证用户名是否已经存在的实现原理.之前很多项目中并未使用Ajax技术,结果是所有的判断都等到点击提交按钮时再执行,这样的结果无非是网站卡/软件死,都说不作死就不会死,所以Ajax被广泛应用,用户竖起拇指称赞,不得不说Ajax俘虏了web用户啊~~ 实现之前先了解下AjaxreadyState的五个状态. 因本人越来越倾向于英文原版,觉得从它的本源探索会更直接更容易理解,所以在下面使用了英文解释,后面是自己的理解. 0:

ajax 异步请求四个步骤

ajax异步请求详解 ajxa定义:异步的JavaScript和xml 1.XMLHttpRequst的出现才有了异步处理 2.创建XmlHttpRequest对象 var request=new XMLHttpRequest(); 注意:如果要兼容IE6以下浏览器则需要编写如下代码 var request; if(window.XMLRequest){ request=new XMLRequestHttpRequest();  //IE7.IE8.360等 }else{ request=new

触碰jQuery:AJAX异步详解

触碰jQuery:AJAX异步详解 传送门:异步编程系列目录…… 示例源码:触碰jQuery:AJAX异步详解.rar AJAX 全称 Asynchronous JavaScript and XML(异步的 JavaScript 和 XML).它并非一种新的技术,而是以下几种原有技术的结合体. 1)   使用CSS和XHTML来表示. 2)   使用DOM模型来交互和动态显示. 3)   使用XMLHttpRequest来和服务器进行异步通信. 4)   使用javascript来绑定和调用.

[Ajax] 使用Ajax异步上传图片文件(非Form表单提交)

通过表单Form提交来上传文件的方式这里就不说了: 下面介绍,通过js中使用ajax异步上传图片文件: 新建一个html页面和一个一般处理程序即可: 涉及思路: //发送2次Ajax请求完成js异步上传文件的操作:          //第1次,post 只上传文件,返回文件名name          //第2次,get 根据文件名name定位服务器上的文件,同时根据浏览器传过来的realname重命名服务器上的文件          //(如果有其他参数,也可以通过第2次一并上传) 图片文件