Struts2学习笔记(二)使用jQuery—Ajax技术的简单Demo

关于struts2的搭建,在Struts2学习笔记(一)中已经写过了,此文简单的介绍下在struts中如何使用jQuery-ajax技术

1、在笔记一的文件上,web.xml不需要修改,只需要在struts.xml文件中添加对ajax的支持,如下:

    <package name="testreg" extends="json-default">//该处的extends为json-default而不是struts-default,因此需要一个jar包,即struts2-json-plugin-2.3.16.3.jar(根据版本的不同而不同)
    	<action name="testreg" class="com.csu.struts.action.UserAction" method="reg">
			<result type="json"></result>
		</action>
    </package>

2、修改上面相对应的action(com.csu.struts.action.UserAction)

在相应的action里面添加reg()的方法,代码如下

	public String reg(){
		System.out.println("+1");
		HttpServletResponse resp = ServletActionContext.getResponse();
		try{
			PrintWriter out = resp.getWriter();
			out.println("{\"id\":\"1001\"}");
			out.flush();
		}catch(IOException e){
			e.printStackTrace();
		}
		return null;
	}

3、修改jsp,使用jQuery的ajax技术

下载jQuery的js文件,放到WebContent下面的js(新建的)目录下,修改login.jsp代码,

引入js

<script type="text/javascript" src="js/jquery-1.11.1.js"></script>

添加一个链接

<a href=javascript:void(0) onclick="testreg();">注册</a>

新增javascript的testreg()方法,此处使用jQuery的ajax技术:

<script type="text/javascript">
function testreg(){
		$.post(
				"testreg",
				function(data){
				 alert(data.id);
			},
			"json"
		); 
	}
</script>


结果:在浏览器中点击注册时,会弹出从action传出来的JSON表达式的id值!

这样,一个简单的jQuery-ajax技术就完成了!以后需要修改的地方也就是action里面的JSON返回值,以及javascript中的testreg()方法的回调函数function的内容!


源码:Struts_Ajax.jar


你可能感兴趣的:(java,jquery,Ajax,json,struts)