(新)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" 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结构