`
yin_jw
  • 浏览: 47932 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

Struts2+json+jQuery(用户名验证)

阅读更多

1、添加struts-2.2.3 jar包

     commons-fileupload-1.2.2.jar

     commons-io-2.0.1.jar

     commons-lang-2.5.jar

     commons-logging-1.1.1.jar

     freemarker-2.3.16.jar

     javassist-3.7.ga.jar

     ognl-3.0.1.jar

     struts2-core-2.2.3.jar

     struts2-json-plugin-2.2.3.jar

     xwork-core-2.2.3.jar

 

2、在web.xml中添加struts2配置

<!-- struts2在web.xml中的配置 -->
	<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>*.action</url-pattern>
	</filter-mapping>

 

3、struts.xml配置

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
    "http://struts.apache.org/dtds/struts-2.0.dtd">

<struts>

	<constant name="struts.devMode" value="fasle" />
	<constant name="struts.i18n.encoding" value="utf-8" />

	<package name="default" extends="json-default" namespace="/test">
		<action name="json" class="com.yjw.action.jsonAction" method="checkLogin">
			<result name="success" type="json">/index.jsp</result>
		</action>
	</package>

</struts>

 

4、添加jQuery js包

    WebRoot/scripts/jquery-1.6.1.js

 

5、src/com/yjw/action/jsonAction.java

package com.yjw.action;

import java.io.Serializable;

import com.opensymphony.xwork2.ActionSupport;

public class jsonAction extends ActionSupport implements Serializable {
	private String userName;
	private int isExist;
	
	public int getIsExist() {
		return isExist;
	}

	public void setIsExist(int isExist) {
		this.isExist = isExist;
	}

	public String getUserName() {
		return userName;
	}

	public void setUserName(String userName) {
		this.userName = userName;
	}

	public String checkLogin() {
		if(this.userName.equals("admin")){
			this.userName = "yjw";
			this.isExist = 1;
		}else{
			this.setIsExist(0);
		}
		return SUCCESS;
	}
}

 

6、WebRoot/index.jsp

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
	String path = request.getContextPath();
	String basePath = request.getScheme() + "://"+ request.getServerName() + ":" + request.getServerPort()+ path + "/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
	<head>
		<base href="<%=basePath%>">

		<title>用户名验证</title>
		<meta http-equiv="pragma" content="no-cache">
		<meta http-equiv="cache-control" content="no-cache">
		<meta http-equiv="expires" content="0">
		<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
		<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">

		<script type="text/javascript" src="scripts/jquery-1.6.1.js"></script>
		<style type="text/css">
			.userText {
			    /*控制文本框的边框是红色的实线*/
				border: 1px solid red;
			}
		</style>
		<script type="text/javascript">
			$(document).ready(function() {
				var userName = $("#userName");
				//页面加载时清空text
				userName.val("");
				var userName_span = $("#userName_span");
				var reg1 = /^[A-Za-z]{1}(\w){4,19}$/; //正则:5-20位字母、数字或下划线组合,首字符必须为字母
				var userName_span1 = "<font style='color:red'>请输入用户名!</font>";
				var userName_span2 = "<font style='color:red'>用户名已经存在!</font>";
				var userName_span3 = "<font style='color:green'>用户名可用!</font>";
				var userName_span4 = "<font style='color:red'>用户名格式不正确!</font>";
				
				userName.change(function() {
					//当userName文本框中没有数据时,设置文本框的border样式,做出提示
					var userNameVal1 = $.trim(userName.val());
					var userNameVal2 = userName.val();
					if(userNameVal1 == ""){
						userName.addClass("userText");
						userName_span.html(userName_span1);
						return false;
					}else{
						userName.removeClass("userText");
						userName_span.html("");
						if(!reg1.test(userNameVal2)){
							userName.addClass("userText");
							userName_span.html(userName_span4);
							return false;
						}else{
							//到服务端判断用户名是否存在
							$.post(
								"test/json.action",
								{"userName":userNameVal1},
								function(result){
									if(result.isExist == 1){
										userName.removeClass("userText");
										userName_span.html(userName_span2);
										return false;
									}else{
										userName.removeClass("userText");
										userName_span.html(userName_span3);
										return true;
									}
								},
								"json"
							);
						}
					}
				});
			});
		</script>
	</head>

	<body>
		请输入用户名:
		<input id="userName" type="text" />
		<span id="userName_span"></span><br>
	</body>
</html>
分享到:
评论
4 楼 shuiwangxing 2011-08-30  
运行这个插件的时候,老是报404的错误
3 楼 lsh4894 2011-08-07  
struts2-json-plugin-2.2.3.jar 哪里有得下载
2 楼 yin_jw 2011-06-19  
var userNameVal2 = userName.val();  
1 楼 mianhuatangone 2011-06-19  
引用
var userNameuserNameVal2 = userName.val();  

相关推荐

    struts2+json+jquery局部刷新实现注册验证

    struts2+json+jquery局部刷新实现注册验证,包括前台的用户名、密码、手机、身份证、邮箱(包含发邮件技术)、邮箱验证码、验证码的验证,用到的是json+jquery,后台则是用struts2+java类

    使用struts2+Ajax+jquery验证用户名是否已被注册

    在使用struts2+ajax时候,通常我们会返回json类型的数据,但是像上面的例子,我们只希望返回一个1和0有助于进行后续判断即可,没必要返回json类型,返回一个text字符串就可以了. regist.jsp(这里只提供[removed]部分): ...

    Ajax验证用户的唯一性

    针对初学者,学习Ajax验证用户的唯一性实战是为了巩固Ajax,Jquery,Json与Struts2基础知识,具体内容如下 浏览效果图: 那我们就开始了,操作步骤如下 1.首先我们先导入所需要的包及文件 Json 包: struts2 包:...

    java开源包2

    JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (&lt;jcaptcha:image label="Type the text "/&gt; ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...

    java开源包1

    JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (&lt;jcaptcha:image label="Type the text "/&gt; ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...

    java开源包11

    JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (&lt;jcaptcha:image label="Type the text "/&gt; ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...

    java开源包3

    JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (&lt;jcaptcha:image label="Type the text "/&gt; ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...

    java开源包6

    JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (&lt;jcaptcha:image label="Type the text "/&gt; ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...

    java开源包5

    JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (&lt;jcaptcha:image label="Type the text "/&gt; ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...

    java开源包10

    JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (&lt;jcaptcha:image label="Type the text "/&gt; ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...

    java开源包4

    JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (&lt;jcaptcha:image label="Type the text "/&gt; ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...

    java开源包8

    JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (&lt;jcaptcha:image label="Type the text "/&gt; ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...

    java开源包7

    JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (&lt;jcaptcha:image label="Type the text "/&gt; ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...

    java开源包9

    JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (&lt;jcaptcha:image label="Type the text "/&gt; ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...

    java开源包101

    JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (&lt;jcaptcha:image label="Type the text "/&gt; ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...

    Java资源包01

    JCaptcha4Struts2 是一个 Struts2的插件,用来增加验证码的支持,使用时只需要用一个 JSP 标签 (&lt;jcaptcha:image label="Type the text "/&gt; ) 即可,直接在 struts.xml 中进行配置,使用强大的 JCaptcha来生成验证码...

    Lerx 网站内容管理系统 v5.5.zip

    Lerx CMS V5版(以下简称V5版)采用了基于Java的SpringMVC框架,抛弃了V2-V3版本使用的Struts 2。SpringMVC框架更加安全、稳定。ORM持久化框架依旧使用Hibernate,版本为5.4。开发时采用的数据库为MySQL。是一个能快速...

    JAVA上百实例源码以及开源项目

    2个目标文件,FTP的目标是:(1)提高文件的共享性(计算机程序和/或数据),(2)鼓励间接地(通过程序)使用远程计算机,(3)保护用户因主机之间的文件存储系统导致的变化,(4)为了可靠和高效地传输,虽然用户...

    JAVA上百实例源码以及开源项目源代码

    Java 源码包 Applet钢琴模拟程序java源码 2个目标文件,提供基本的音乐编辑功能。编辑音乐软件的朋友,这款实例会对你有所帮助。 Calendar万年历 1个目标文件 EJB 模拟银行ATM流程及操作源代码 6个目标文件,EJB来...

Global site tag (gtag.js) - Google Analytics