ajax请求struts2 中的action

前端之家收集整理的这篇文章主要介绍了ajax请求struts2 中的action前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
<?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>
	<package name="default" namespace="" extends="struts-default">
		<action name="testAction" class="com.icreate.service.testAction">
			<result name="success">/index.jsp</result>
		</action>
	</package>
	
	<package name="ajaxDemo" namespace="" extends="json-default">
		<action name="tAjax" class="com.icreate.service.tAjax" method="loadData"> 
			<result name="success" type="json">/index.jsp</result>
		</action>
	</package>
	
</struts>

这是struts.xml文件

中间遇到了一个问题,就是两个package 的name要不一样,因为后面的extends属性值不同,看上面代码,还有namespace,这几个值经常出错,特别要引起注意

还有一点 ,记得导入包struts2-json-plugin-2.3.16.1.jar,


下面是js代码

	var xmlhttp;
		function getData()
		{
			alert("草");
			if(window.XMLHttpRequest)
			{
   	 			xmlhttp=new XMLHttpRequest();
			}
			else 
			{
    			xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
			}
    		xmlhttp.onreadystatechange=myfunc;
  			xmlhttp.open("GET","tAjax",true);
    		xmlhttp.send();
		}
function myfunc(){       
		if(xmlhttp.readyState==4&&xmlhttp.status==200)
        {
   		 	alert("完成请求:"+xmlhttp.responseText);
        }
		if(xmlhttp.readyState==1)
        {
            alert("建立连接");
        }
        if(xmlhttp.readyState==2)
        {
            alert("接收请求");
        }
		if(xmlhttp.readyState==3)
        {
            alert("处理请求中");
        }
	}

后台代码
package com.icreate.service;

import com.opensymphony.xwork2.ActionSupport;

public class tAjax extends ActionSupport{
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	private String name=null;
	
	public void setName(String name){
		this.name="hello";
	}
	public String getName(){
		return this.name;
	}
	public String loadData(){
		setName("");
		return SUCCESS;
	}
}
原文链接:https://www.f2er.com/ajax/164928.html

猜你在找的Ajax相关文章