Ajax实战项目1 验证用户的唯一性 环境(Ajax+struts2)
2016-03-24 16:44
453 查看
验证用户的唯一性
Ajax验证用户名是否存在
本次实战可以巩固Ajax知识。针对初学者学习,大牛勿喷!!!呵呵呵。。。不多说了先直接上图看效果:
步骤:
1. 导入相关架包2. 配置web.xml
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1"> <display-name>Ajax</display-name> <welcome-file-list> <welcome-file>login.jsp</welcome-file> </welcome-file-list> <filter> <filter-name>struts2</filter-name> <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class> </filter> <filter-mapping> <filter-name>struts2</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> </web-app>
3. 编写 login.jsp文件
<script type="text/javascript"> function checkUserName() { var name = document.getElementById("name").value; //alert(name); if (name == "") { document.getElementById("namemsg").innerHTML = "<font color='red'>用户名不能为空</font>"; return ; } var xmlHttp ; if(window.XMLHttpRequest) { xmlHttp = new XMLHttpRequest() ; } else { xmlHttp = new ActiveXObject("Microsoft.XMLHTTP") ; } //alert("readState状态:"+xmlHttp.readyState+"status:状态:"+xmlHttp.status) ; xmlHttp.onreadystatechange = function () { //alert("readState状态:"+xmlHttp.readyState+"status:状态:"+xmlHttp.status) ; if (xmlHttp.readyState == 4 && xmlHttp.status == 200) { //alert("xmlHttp.responseText:"+xmlHttp.responseText) ; if(xmlHttp.responseText == "true") { document.getElementById("namemsg").innerHTML = "<font color='red'>该用户名已经注册!</font>" ; }else{ document.getElementById("namemsg").innerHTML = "<font color='#99CC66'>该用户名可用!</font>" ; } } } xmlHttp.open("get", "user_isexist?name="+name, true) ; //xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded") ; xmlHttp.send() ; } </script>
<div class="row"> <h1>Ajax验证用户的唯一性</h1> <form action=""> 名字: <input type="text" id="name" name="name" id="name" onblur="checkUserName();" /> <span id="namemsg"></span> <br><br> <input type="submit" value="submit"> </form> </div>
4. 编写 UserAction.java 文件
public void isexist() { boolean isexist = getName().equals("张三") ; try { PrintWriter w = response.getWriter(); w.print(isexist); w.flush(); w.close(); } catch (IOException e) { e.printStackTrace(); } }
5. 配置struts.xml
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN" "http://struts.apache.org/dtds/struts-2.3.dtd"> <struts> <constant name="struts.enable.DynamicMethodInvocation" value="true" /> <constant name="struts.ui.theme" value="simple" /> <constant name="struts.devMode" value="true" /> <package name="default" namespace="/" extends="struts-default"> <action name="user_*" class="com.ddge.action.UserAction" method="{1}"> <result name="error">/login.jsp</result> </action> </package> </struts>
总结
这个实战项目很简单,由于js部分代码比较多,后面中会结合Jquery ,简化了部分代码。相关文章推荐
- Java中的序列化Serialable高级详解
- 关于java.lang.IllegalArgumentException: View not attached to window manager 错误的分析
- spring学习笔记(6)AOP前夕[1]jdk动态代理实例解析
- java.不使用for,while循环打印99乘法表
- Map接口的实现类--Hashtable和HashMap及TreeMap的区别--------(java复习)
- spring mvc 基于注解的使用总结
- springMVC 整合ueditor
- java数据库连接池之bonecp
- struts2架构图
- Java学习笔记(一)之―认识JDK、JRE、JVM
- Exception_JDK安装Error opening registry key...
- Java内存管理
- JAVA内部类
- JAVA内部类
- Eclipse报错:Setting property 'source' to 'org.eclipse.jst.jee.server:test1' did no
- springMVC 上传文件同时传递参数
- 把Java数组转换为List时的注意事项
- Java IO:IO框架
- java.io.FileNotFoundException-再次踩坑windows编码
- Java 实现文章汉字关键词(违禁词)识别1.0