本站首页    管理页面    写新日志    退出


天堂之光 人间希望

你我共同品味

JAVA的浓香.

Linux的清芬.

«August 2025»
12
3456789
10111213141516
17181920212223
24252627282930
31


我的分类(专题)

日志更新

最新评论

留言板

链接

联系我

msn:zhanglincon@hotmail.com


Blog信息
blog名称:
日志总数:99
评论数量:281
留言数量:4
访问次数:806925
建立时间:2005年11月17日




   

[Ajax]一个用Ajax做的用户名验证程序
原创空间,  软件技术

zhanglincon 发表于 2006/6/15 23:37:50

  现在Ajax是一个相当火的东西,那么Ajax是什么呢?我的理解Ajax就是一个工具,就是一个客户端的技术,不管用何种服务器端技术都可以用Ajax。这里我说的是用java作为服务器端技术。闲言废语不要讲,表一表NB技术Ajax! 1,我先说一下这个例子要实现的效果,比如用户注册时要输入用户名,在输入完用户名,当用户输入下一项的时候,而且是在页面提交之前,利用Ajax判断用户输入的用户名是否合法可用。这就用到了Ajax的异步提交的作用。 2,下面是程序的例子,一个用户输入数据的页面userInput.jsp,一个是服务器端的相应。 ------------userInput.jsp------------------- <%@ page contentType="text/html; charset=GBK" %><html><style type="text/css"><!--@import url("../aqgc/style_c.css");--></style><head><title>Ajax实例</title><meta http-equiv="Content-Type" content="text/html; charset=gb2312"><style type="text/css"><!--.style1 { color: #FF3333; font-weight: bold;}.style14 {font-size: 13px} .text12black { font-size: 12px;}--></style> <script language="JavaScript" src="/images1/functions.js"></script></head><body bottomMargin="0" leftMargin="0" topMargin="0" rightMargin="0" marginheight="0" marginwidth="0"><center><SCRIPT language=JavaScript src="/comm/include_header.asp" type=text/javascript></SCRIPT><table width="748" border="0" align="center" cellpadding="0" cellspacing="0">  <tr>   <td height="5"></td>  </tr></table><script language="javascript"> <!--  //创建XMLHttpRequest对象  function GetO(){  var ajax=false;  try {   ajax = new ActiveXObject("Msxml2.XMLHTTP");  } catch (e) {   try {    ajax = new ActiveXObject("Microsoft.XMLHTTP");   } catch (E) {    ajax = false;   }  }  if (!ajax && typeof XMLHttpRequest!='undefined') {   ajax = new XMLHttpRequest();  }  return ajax; }   function getMyHTML(serverPage, objID) {  var ajax = GetO();   //得到了一个html元素,在下面给这个元素的属性赋值   var obj = document.all[objID];   //设置请求方法及目标,并且设置为异步提交   ajax.open("GET", serverPage, true);     ajax.onreadystatechange = function() {    if (ajax.readyState == 4 && ajax.status == 200) {  //innerHTML是HTML元素的属性,如果您不理解属性那就理解为HTML元素的变量  //ajax.responseText是服务器的返回值,把值赋给id=passport1的元素的属性  //innerHTML这个属性或说这个变量表示一组开始标记和结束标记之间的内容    obj.innerHTML = ajax.responseText;    }   }   //发送请求   ajax.send(null);  }  function CheckGroupName(){     getMyHTML("http://www.***.com/check.jsp?action=checkgroupname&groupName="+name_form.group_name.value, "passport1");  }  //这个函数的作用是当用户的焦点从其他地方回到group_name这个输入框时再给属性赋回原内容  function sl(tx){    if(tx=='passport1'){   document.all[tx].innerHTML = "<div class='explain_blue' align='left'>4-20 个字符 (包括大小写字母,中文,数字,特殊字符等) 1个汉字等于2个字符,建议使用中文。注册后不可修改。</div>";    }    }     function check()  {              if(document.name_form.group_name.value.length<1)   {    alert("请您给您的群组取个名字!");    document.name_form.group_name.focus();    return false;   }    if(!OK()){    return false;     }    document.name_form.action='addgroup.do';   document.name_form.target='_parent';   document.name_form.submit();  }  function OK(){    var obj = document.getElementById("passport1");    if(obj.innerHTML.indexOf("可用")==-1){   return false;    }      return true;  }  --></script>   <form name="name_form"  method=post>     <td height="200" valign="top" > <table width="100%" height="270" border="1" bordercolor="#96D6E8" class="text12black">   <tr>       <td width="22%" height="20" align="right">用户名:</td>      <td width="61%" align="left">          <INPUT name="group_name"  type="text" value="" size=30 maxlength="50" onBlur="javaScript:CheckGroupName();" onFocus="return sl('passport1');" />      </td>      <td  id="passport1"  valign="top"><div class="explain_blue" align='left' ><span class="gray">4-20 个字符 (包括大小写字母,中文,数字,特殊字符等) 1个汉字等于2个字符,建议使用中文昵称。注册后不可修改。</span></div>       </td>    </tr></table>    </td>  </form></BODY></html> ---------------check.jsp----------------- <%--/**************************************************************************    程序名称: check.jsp                                                 **    功能描述: 检查用户注册信息合法性                                    **    作    者:   张丽鹏      2006/05/26    created                       **                                                                        ***************************************************************************/--%><%@ page contentType="text/xml; charset=GBK" %><%@ page import="com.xiaoyouxi.db.ConnectionManager,com.xiaoyouxi.group.*"%><%@ page import="sun.jdbc.rowset.*"%><%@ page import="com.xiaoyouxi.util.RegisterCheck"%> <%String action=request.getParameter("action"); //检查用户名if("checkgroupname".equals(action)){ //System.out.println("come in checkgroupname"); //用作数据库联接,可以根据你的情况修改,如果为测试可以不用*作记号的语句 ConnectionManager manager=ConnectionManager.getInstance();//****************** String groupname=request.getParameter("groupName").trim(); if("".equals(groupname)){  System.out.println("null");  out.println("<div class='explain_blue' align='left'>用户名不能为空!</div>"); } else if(groupname.length()<4 || groupname.length()>20 || !RegisterCheck.checkUserName(groupname) ){  out.println("<div class='explain_blue' align='left'>用户名"+groupname+"不合法!(长度为4到20位,且不能使用?#=等特殊字符)</div>"); } else{//******************   String sql="select g_name from jy_group where g_name='"+groupname+"'";//******************  try {//******************   CachedRowSet crs=manager.getRs(sql);//******************   if(crs.next() && crs.size()>0){//******************    out.println("<div class='explain_blue' align='left'>用户名"+groupname+"已被占用,请重新输入!</div>");//******************   }//******************   else{     out.println("您的用户名可用");   }   }  catch(Exception e){   System.out.println("checkgroupname:"+e);  } } }%>


阅读全文(15116) | 回复(3) | 编辑 | 精华
 


回复:一个用Ajax做的用户名验证程序
原创空间,  软件技术

Rolex Replica(游客)发表评论于2012/8/9 18:16:21

Very soon, you will be given all plum offers and your path for success will be paved. You will attain success in all phases of life. These [url=http://www.totallysoaked.com/]rolex replica watches[/url] will become an integral part of your life and you will not be able to get apart from them. Since these are reasonably priced, you can have many of these without burning a hole in your pocket.


个人主页 | 引用回复 | 主人回复 | 返回 | 编辑 | 删除
 


回复:一个用Ajax做的用户名验证程序
原创空间,  软件技术

asdasd(游客)发表评论于2008/11/24 15:14:30

dfsdfsdfdfsdfsdfsdffssfsdfsdsdfsdfsdfsdfsdfsdfsdfsdfsdfsdf

个人主页 | 引用回复 | 主人回复 | 返回 | 编辑 | 删除
 


回复:一个用Ajax做的用户名验证程序
原创空间,  软件技术

天蓝(游客)发表评论于2008/11/23 23:56:08

我也是搞软件的,好惭愧

个人主页 | 引用回复 | 主人回复 | 返回 | 编辑 | 删除
 


» 1 »

发表评论:
昵称:
密码:
主页:
标题:
验证码:  (不区分大小写,请仔细填写,输错需重写评论内容!)



站点首页 | 联系我们 | 博客注册 | 博客登陆

Sponsored By W3CHINA
W3CHINA Blog 0.8 Processed in 0.291 second(s), page refreshed 144761446 times.
《全国人大常委会关于维护互联网安全的决定》  《计算机信息网络国际联网安全保护管理办法》
苏ICP备05006046号