在JSP页面下使用AJAX实现用户名存在的检测

<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( "用户名已存请重新输入" );
         }
     }
 
}

转载于:https://www.cnblogs.com/antis/p/5458214.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值