`

(新)Jquery ajax请求Struts2 action 返回xml数据

阅读更多

1.js代码

 

//案件来源
function loadCaseSources(position_id){
	var  action="/caseSource/getAllCaseSource.action";
	var  data="";
	var  error_message="加载案件来源数据失败!";
	getCaseSourcesSelect(action,data,position_id,error_message);
}

function getCaseSourcesSelect(action,data,position_id,error_message)
{
	$.ajax({
	  url:action, 
	  data:data,
      type: 'POST', 
      dataType: 'xml',                            
      error: function(){     
       alert(error_message); 
      }, 
      success:function(circumstancesXML)
      {
      	 $(circumstancesXML).find("option").each(function(){
			   var dm=$(this).children("option_value").text();  
			   var mc=$(this).children("option_name").text();
			   $("#"+position_id).append("<option value="+dm+">"+mc+"</option>");
		  });
		  $("#"+position_id).css("text-align","center");
      }
	});
}

 

 struts配置

	<!--案件来源-->
	<package name="caseSource" extends="default" namespace="/caseSource">			
		<action name="getAllCaseSource" class="gov.tax.wfwz.business.action.commons.CaseSourceAction" method="getAllCaseSource">
			<result name="xml">/module/common/caseSource.jsp</result>
		</action>
	</package>
 

 

2.Action 代码

 

/**
 * 案件来源
 * @author lixueli
 * @date 2010-11-24
 */
public class CaseSourceAction extends BaseAction {

	private CaseSourceService caseSourceService;

	public void setCaseSourceService(CaseSourceService caseSourceService) {
		this.caseSourceService = caseSourceService;
	}

	public String getAllCaseSource() throws BusinessException, Exception {
		try {
			List<CaseSource> caseSources = caseSourceService.getAllCaseSource();
			request.setAttribute("caseSources", caseSources);
			return "xml";
		} catch (Exception e) {
			ErrorReData.excecute(request, e);
			throw e;
		}
	}

}

 

 3.jsp 代码

 

<?xml version='1.0' encoding='gbk'?>
<%@ page language="java" contentType="text/xml; charset=GBK" pageEncoding="GBK"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%
	response.setHeader("Cache-Control", "no-cache");
	response.setHeader("Pragma", "no-cache");
	response.setDateHeader("Expires", 0);
%>
	<circumstances>
	<c:forEach items="${caseSources}" var="caseSource">
		<option>
			<option_name><c:out value="${caseSource.wfajly_mc}"/></option_name>
			<option_value><c:out value="${caseSource.wfajly_dm}"/></option_value>
		</option>
	</c:forEach>
	</circumstances>
 

 

分享到:
评论
1 楼 kjj 2011-11-06  
这个配置稍显繁琐,需要在jsp中固定xml结构
可用xml转换的库,比如xtream,等等,在action里用stream result 直接输出,免去一个jsp的工作!!!

相关推荐

    JQuery发起ajax请求Struts2,并操作JSON数据的例子

    在本例中,Struts2的Action将处理jQuery发起的Ajax请求,并返回JSON格式的数据。 **JSON (JavaScript Object Notation)** 是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。在Ajax请求中...

    JQuery发送Ajax请求Struts2,并返回JSON的例子

    在Struts2中,我们可以配置Action类来处理Ajax请求,并以JSON格式返回数据。 以下是一个简单的示例步骤: 1. **前端设置**: 在HTML页面中,使用jQuery发起Ajax请求。例如: ```javascript $.ajax({ url: ...

    jquery ajax json struts2最简单例子测试成功

    2. **JSON与Struts2的结合**:Struts2 Action执行后返回一个JSON字符串,这个字符串被jQuery AJAX请求接收。通过Struts2的插件,如struts2-json-plugin,可以在Action类中直接返回一个包含JSON数据的对象,Struts2会...

    Struts2+Jquery+Ajax

    在Struts2框架下,我们可以使用Jquery的Ajax方法向服务器发送请求,获取JSON或XML数据,然后动态更新页面的部分内容。 在"06-mvc之struts2.ppt"中,可能涵盖了以下内容: 1. Struts2框架的基本概念和架构 2. 如何...

    Jquery struts2 json 实现ajax

    标题 "Jquery struts2 json 实现ajax" 涉及到的是在Web开发中使用jQuery库与Struts2框架结合处理JSON数据的Ajax技术。这个主题主要关注如何通过前端的jQuery实现异步请求,与后端的Struts2框架进行交互,从而更新...

    jquery的ajax传json对象数组到struts2的action

    在Web开发中,jQuery的AJAX功能经常被用于与服务器进行异步数据交换,而Struts2作为一款流行的Java Web框架,提供了处理前端请求的能力。本文将深入探讨如何使用jQuery的AJAX方法发送JSON对象数组到Struts2的Action...

    Jquery_Ajax_Struts2_Action_JSP_Json

    总结起来,"Jquery_Ajax_Struts2_Action_JSP_Json"的示例展示了如何利用jQuery的Ajax功能与Struts2框架相结合,通过JSON数据格式在客户端和服务器端之间进行高效的数据交换,从而实现无刷新的页面更新,提升Web应用...

    Ajax与Struts2异步请求数据

    这个插件提供了JSON结果类型,使得Struts2可以返回JSON格式的数据,便于Ajax请求接收和解析。 - **配置Struts2 XML**:在`struts.xml`中定义一个包`ajax`,并扩展`json-default`,设置`result`类型为`json`,这样...

    struts2+jquery执行ajax并返回json类型数据(源码)

    在本示例中,Struts2将处理来自jQuery的Ajax请求,并返回JSON格式的响应数据。 jQuery则是一个轻量级的JavaScript库,简化了DOM操作、事件处理和Ajax交互。在本例中,jQuery的`$.ajax()`方法用于发起异步请求,获取...

    struts2+ajax+jquery

    在Struts2的配置文件(struts.xml)中,我们需要定义一个对应的Action,该Action将处理来自Ajax请求的数据,并返回响应。例如: ```xml &lt;package name="default" namespace="/" extends="struts-default"&gt; &lt;action...

    AJAX 想Struts2后台传送Json数据并向前台返回Json格式的数据

    通过JavaScript(通常是jQuery库)创建异步请求,我们可以向Struts2 Action发送JSON数据,同时接收返回的JSON数据。例如,使用jQuery的`$.ajax`或`$.getJSON`方法,构建一个请求,将JSON对象作为数据发送,并设置...

    Struts2 与Jquery Ajax的json数据交换的典型范例

    总结,Struts2和jQuery的Ajax JSON数据交换涉及以下几个关键步骤:配置Struts2的JSON插件,编写返回JSON数据的Action,使用jQuery发起Ajax请求并处理返回的JSON数据。通过这种方式,可以实现客户端与服务器之间的...

    jquery ajax +struts1.3

    jQuery的$.ajax()方法是实现AJAX的核心,它允许开发者发送异步请求到服务器,并处理返回的数据。 Struts 1.3是一个基于MVC(Model-View-Controller)设计模式的Java Web框架,用于构建可维护性和可扩展性高的企业级...

    Struts2+jQuery ajax的一个商品小系统

    2. **Struts2 Action**:创建处理商品操作的Action类,如`AddProductAction`、`DeleteProductAction`等,这些Action对应用户的请求,处理业务逻辑并返回结果。 3. **Service层**:定义业务接口和服务实现,用于处理...

    使用struts2+JQuery实现的简单的ajax例子

    在`struts.xml`中配置这个Action,确保它能接收GET或POST请求,并指定一个结果类型为`json`,这使得Struts2能够以JSON格式返回数据。 2. **编写AjaxAction**: 创建`AjaxAction.java`,在其中定义一个方法,如`...

    struts2ajax项目

    在Struts2配置文件(struts.xml)中,你需要为这个Action定义一个URL映射,确保jQuery可以正确地发送请求到服务器: ```xml &lt;package name="default" namespace="/" extends="struts-default"&gt; &lt;action name="your...

    ajax-struts2需要的3个包

    Struts2 JSON插件增强了框架处理JSON请求和响应的能力,使得开发者能够方便地将Action的结果以JSON格式输出,供Ajax调用。通过这个插件,你可以配置Struts2的动作类,使其能够直接返回JSON对象,而无需额外的视图层...

    Struts2整合jQuery实现Ajax功能

    在本案例中,我们将探讨如何使用 Struts2 的 Action 配合 jQuery 的 AJAX 方法来实现实时验证和数据交换。 首先,我们需要了解 jQuery。jQuery 是一个强大的 JavaScript 库,它简化了 DOM 操作、事件处理、动画以及...

    jquery下的ajax与struts2操作数据库

    在实现上述功能时,需要确保Struts2的配置文件(struts.xml)正确地定义了相应的Action,并且Action类中包含了处理AJAX请求的方法。同时,前端的HTML和jQuery代码需要正确地绑定事件和处理响应。 总的来说,结合...

    struts2 jquery xml

    例如,使用jQuery的Ajax方法发送请求到Struts2 Action,获取数据后更新页面部分内容,实现无刷新的效果。 **工具的使用** 在开发过程中,开发者可能需要用到IDE(如IntelliJ IDEA或Eclipse)中的Struts2插件,帮助...

Global site tag (gtag.js) - Google Analytics