<script type="text/javascript">
    function init(){
        document.getElementById("username").focus();
    }
    function validate(userfield) {
        if (trim(userfield.value).length != 0) {
            var xmlHttpRequest = null;
            var url = "../AccountIsExistServlet?account=" + userfield.value;
            var usermsg = document.getElementById("usermsg");
            if (window.XMLHttpRequest) {//表示前浏览器IE
                xmlHttpRequest = new XMLHttpRequest();
            else if (window.ActiveXObject) {
                xmlHttpRequest = new ActiveXObject("Microsoft.XMLHTTP");
            }
            xmlHttpRequest.open("GET", url, true);//设置请求式GET设置请求URL设置异步提交
            xmlHttpRequest.onreadystatechange = function(){//址复制给onreadystatechange属性
                if(xmlHttpRequest.readyState == 4){//Ajax引擎状态功
                    if(xmlHttpRequest.status == 200){//HTTP协议状态功
                        if(trim(xmlHttpRequest.responseText) != ""){
                            usermsg.innerHTML = "<font color='red'>" + trim(xmlHttpRequest.responseText) + "</font>";
                            userfield.focus();
                        }else{
                            usermsg.innerHTML = "恭喜您用户名使用 ";
                        }
                    }else{
                        alert("请求失败错误码=" + xmlHttp.status);
                    }
                }
            };
            xmlHttpRequest.send(null);//设置信息发送Ajax引擎
        }else{
            usermsg.innerHTML = "";
        }
    }
<tr height="30px;">
    <td><font color="#FF0000">*</font>用户名:</td>
    <td><input type="text" name="account" id="username" maxlength="12" onblur="validate(this)"/></td>
    <td width="220px;"><span id="usermsg"></span></td>
</tr>
import java.io.IOException;
import java.io.PrintWriter;
 
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 com.gas.bo.UserInfoBO;
 
@WebServlet("/AccountIsExistServlet")
public class AccountIsExistServlet extends HttpServlet {
 
    protected void doGet(HttpServletRequest request,
            HttpServletResponse response) throws ServletException, IOException {
        // 阻止缓存
        response.setContentType("text/xml");
        response.setHeader("Cache-Control""no-store"); // HTTP1.1
        response.setHeader("Pragma""no-cache"); // HTTP1.0
        response.setDateHeader("Expires"0); // prevents catching at proxy
                                                // server
 
        PrintWriter out = response.getWriter();
         
        //js传汉字进行转码避免汉字候现乱码
        String account = request.getParameter("account");
        UserInfoBO userInfoBO = new UserInfoBO();
        boolean b = userInfoBO.accountIsExist(account);
        if (b) {
            out.print("用户名已存请重新输入");
        }
    }
 
}

在JSP页面下使用AJAX实现用户名存在的检测的更多相关文章

  1. 11月10日上午ajax基础知识、用ajax做登录页面、用ajax验证用户名是否可用、ajax动态调用数据库

    1.ajax的基础知识 ajax是结合了jquery.php等几种技术延伸出来的综合运用的技术,不是新的内容.ajax也是写在<script>标签里面的. 如果使用ajax一定是要有1个处 ...

  2. ajax基础知识、用ajax做登录页面、用ajax验证用户名是否可用、ajax动态调用数据库

    1.ajax的基础知识 ajax是结合了jquery.php等几种技术延伸出来的综合运用的技术,不是新的内容.ajax也是写在<script>标签里面的. 如果使用ajax一定是要有1个处 ...

  3. 14.ajax基础知识、用ajax做登录页面、用ajax验证用户名是否可用、ajax动态调用数据库

    1.ajax的基础知识 ajax是结合了jquery.php等几种技术延伸出来的综合运用的技术,不是新的内容.ajax也是写在<script>标签里面的. 如果使用ajax一定是要有1个处 ...

  4. 在jsp页面下, 让eclipse完全支持HTML/JS/CSS智能提示(转)

      我们平时用eclipse开发jsp页面时智能提示效果不太理想,今天用了两个小时发现了eclipse也可以像Visual Studio 2008那样完全智能提示HTML/JS/CSS代码,使用ecl ...

  5. 在jsp页面下, 让eclipse完全支持HTML/JS/CSS智能提示

    我们平时用eclipse开发jsp页面时智能提示效果不太理想,今天用了两个小时发现了eclipse也可以像Visual Studio 2008那样完全智能提示HTML/JS/CSS代码,使用eclip ...

  6. jsp页面 列表 展示 ajax异步实现

    1. 服务端先返回页面基本结构(如message.jsp), <%@ page language="java" contentType="text/html; ch ...

  7. 初始化jsp页面下拉选备选项【我】

    将下列 script标签放到页面的最下端 <!-- 初始化的全局变量,供js中使用,主要拼接下拉选的初始化值 --> <script type="text/javascri ...

  8. Jsp页面输入中文,MYSQL数据库乱码???问题

    首先,先看一下自己mysql数据库的编码格式 其次,cmd模式下执行命令set names gbk 最后,更改my.ini文件文件参数为gbk 那为什么会产生乱码问题呢? 原因有以下几种: 一.项目编 ...

  9. 解决JSP页面中文乱码插入到数据库的问题

    在JSP页面使用表单注册一个用户名的时候,查看到数据库里面的表中文显示乱码的情况有两种: 1.JSP页面传进来的参数中文就是乱码,则是前台的问题,这个时候写一个过滤器就好了,可以写如下的一个过滤器 p ...

随机推荐

  1. CodeForces 546B-Soldier and Badges

    题意: 给出一些数字,要求每个数字都不一样需要增加几 思路: 先排序,然后一个个增加,最后求总和差 代码如下: #include <iostream> #include <cstdi ...

  2. 最大子段和-Program A

    最大子段和 Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u Description G ...

  3. matlab 画框(三) 画框并保存图像

    initstate = [x y w h];%-----------------------------------------Show the tracking resultimshow(uint8 ...

  4. OpenCV之响应鼠标(三):响应鼠标信息

    转自:http://blog.csdn.net/haihong84/article/details/6599838 程序代碼如下: #include <cv.h>#include < ...

  5. C++学习之静态成员

    一.静态数据成员 C++允许将类的数据成员定义为静态成员.静态数据成员是属于类的,整个类只有一个备份,相当于类的全局变量,能够被该类的所有对象共用. 1.静态成员的声明 在类数据成员的声明前加上关键字 ...

  6. 关于 IOS 发布的点点滴滴记录(一)

    今天又是发布 APP 审核的时候,哎,说来也悲催. 我们产品连这次好像是第四次被苹果公司拒绝了,想想都有点伤感.其实对于里面的内容我到是不是很关心.我关心的是在这过程中我所碰到的奇怪的事情.  (这次 ...

  7. select multiple images in Android Gallery

    http://stackoverflow.com/questions/18520976/all-properties-of-intent-putextra-to-crop-image-in-andro ...

  8. android avoiding-memory-leaks

    android avoiding-memory-leaks Memory Leak是会有多个方面会引起的,比如Drawable, RemoteViews, Receiver, Cursor,Input ...

  9. Virtual Friend Function

    一般而言,友元作为一种紧耦合的设计,被视作类的一部分.一个经典的应用就是关于类的序列化和反序列化. class A { friend ostream& operator<<(ost ...

  10. 算法导论 第六章 思考题 6-3 d叉堆

    d叉堆的实现相对于二叉堆变化不大,首先看它如何用数组表示. 考虑一个索引从1开始的数组,一个结点i最多可以有d个子结点,编号从id - (d - 2) 到 id + 1. 从而可以知道一个结点i的父结 ...