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

java 返回xml jquery处理

    博客分类:
  • ajax
阅读更多
import java.util.List;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionMapping;
import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;

import com.autotoll.jv.erp.proxy.PortletActionBeanProxy;
import com.liferay.portal.struts.AJAXAction;
import com.liferay.portal.theme.ThemeDisplay;
import com.liferay.portal.util.WebKeys;
import com.autotoll.jv.pojo.impl.Citytable;

public class ShowCityAjax extends AJAXAction{

	public String getText(ActionMapping arg0, ActionForm arg1,
			HttpServletRequest request, HttpServletResponse response) throws Exception {
		
		ThemeDisplay themeDisplay = 
			(ThemeDisplay) request.getAttribute(WebKeys.THEME_DISPLAY);
		String language = themeDisplay.getLanguageId();
		
		String pid = request.getParameter("pid");
		String cityId = "";
		String cityName = "";
		
		Document document = DocumentHelper.createDocument();
		Element root = document.addElement("city");
		
		if (pid !=null && ! pid.trim().equals("")) {
			List<Citytable> list = 
				PortletActionBeanProxy.getInstance().
					getCityTableSvc().findCityByPId(Long.parseLong(pid));
			if (list !=null && list.size()>0) {
				for (Citytable city :list) {
					cityId = city.getCityid().toString();
					if(language.trim().equals("zh_CN")) {
						cityName = city.getCitynameSc();
					} else if(language.trim().equals("zh_TW")) {
						cityName = city.getCitynameTc();
					} else {
						cityName = city.getCitynameEng();
					}
					Element cId = root.addElement("cityId");
					Element cName = root.addElement("cityName");
					cId.addText(cityId);
					cName.addText(cityName);
				}
			}
		}
//		System.out.println(root.asXML());
		return root.asXML();
	}


jsp 页面:
function toXML(strxml){    
    try{    
        xmlDoc = new ActiveXObject("Microsoft.XMLDOM");    
        xmlDoc.loadXML(strxml);    
    } catch(e){    
        var oParser=new DOMParser();    
        xmlDoc=oParser.parseFromString(strxml,"text/xml");    
    }    
    return xmlDoc;    
}   

function getCity(obj){
	var pid = obj.options[obj.selectedIndex].value;
	if (pid != "") {
	jQuery.ajax(
		{url: '<%= themeDisplay.getPathMain() %>/erp/showCity',	
		 data: {pid:pid},	
		 success: setOptions});
	} else {
	  var selectObj = document.getElementById('city_');
	  selectObj.options.length = 0;
	  selectObj.options.add(new Option('<liferay-ui:message key="erp.select.option.choose"/>',""));
	  document.getElementById("address-alert-span").style.display = "";
	}
}

function setOptions(xml) {
	var radioValue = getRadioValue();
	var selectObj = document.getElementById('city_');
	selectObj.options.length = 0;
	var xmlobj = toXML(xml);
	var cidArr = xmlobj.getElementsByTagName('city/cityId');
	var cNameArr = xmlobj.getElementsByTagName('city/cityName');
	selectObj.options.add(new Option('<liferay-ui:message key="erp.select.option.choose"/>',""));	
	for(var i=0; i<cidArr.length; i++){
		selectObj.options.add(new Option(cNameArr[i].childNodes(0).nodeValue,cidArr[i].childNodes(0).nodeValue));	
	}
	document.getElementById('city').value=cidArr[0].childNodes(0).nodeValue;
	if (document.getElementById('city').value != "" && document.getElementById('address').value != "") {
      document.getElementById("address-alert-span").style.display = "none";
    } else {
      document.getElementById("address-alert-span").style.display = "";
    }
}
分享到:
评论

相关推荐

    java+jquery处理xml数据的方法

    本实例中,我们将探讨如何使用 Java 作为后端服务器处理 XML,而 jQuery 作为前端 JavaScript 库来发送请求和处理返回的 XML 数据。 首先,我们来看前端部分,即 jQuery 的使用。在 `AjaxJqueryXml.js` 文件中,`...

    使用WebService的方法返回xml格式的数据

    Web服务(WebService)是一种基于网络的、分布式的模块化组件,它使用标准的XML(可扩展标记语言)来封装...通过理解并掌握这些概念,开发者可以创建和使用返回XML格式数据的WebService,实现不同应用之间的数据交换。

    java使用Jquery的jar包

    通常,这涉及到将Jquery的功能转化为JSON或XML格式,通过HTTP请求在Java后端和前端之间传递数据。 1. **集成Jquery库** - 在Java项目中,我们通常使用JSP(Java Server Pages)来编写前端代码。可以将Jquery库的....

    java程序使用jquery AJAX

    通过编写前端的jQuery AJAX请求和后端的Java处理逻辑,你可以创建动态、高效的Web应用程序。在开发过程中,记得利用源码管理和版本控制工具(如Git),以及各种开发工具,以提高开发效率和代码质量。

    Java编程使用的jQuery包

    2. **JSON数据交换**:Java服务器端通常以JSON格式返回数据,jQuery可以方便地解析JSON对象,更新DOM元素,实现动态数据展示。 3. **服务器端验证**:虽然主要的验证应在服务器端完成,但Java开发者也可能需要编写...

    Java实现XML导入不同数据库,从数据库导出数据到XML

    JDOM允许开发者以Java对象模型的方式来处理XML,这使得XML数据的处理变得更加直观和易于理解。 在Java中导入XML数据到数据库时,我们首先需要使用JDOM解析XML文件,创建一个Document对象,然后通过XPath或DOM遍历...

    Java通过jQuery实现ajax异步请求

    综上所述,"Java通过jQuery实现ajax异步请求"的示例工程涵盖了客户端与服务器端的交互流程,包括使用jQuery发起AJAX请求、Java后端处理请求并返回数据,以及数据格式的转换和错误处理。了解并掌握这些知识点,对于...

    JAVA___jQuery+AJAX_仿百度搜索功能

    在这个项目中,用户输入关键词时,将通过AJAX异步请求发送到服务器,服务器端使用Java进行处理,然后返回相关的搜索结果,这一切都在不刷新页面的情况下完成,与百度搜索类似。 【描述解析】 "JAVA___jQuery+AJAX_...

    java开发常用jar包之jquery.rar

    3. **Servlet与jQuery**:jQuery发起的Ajax请求可以直接与Servlet交互,Servlet处理请求并返回JSON数据,jQuery解析数据并更新页面。 **在Java项目中引入jQuery** 1. **下载jQuery库**:可以从官方网站或通过npm、...

    JAVAspring-使用JavaSpring+JQuery开发的web天气APP.zip

    当请求成功时,jQuery可以帮助我们轻松地将返回的数据插入到网页的适当位置,更新天气信息。 此外,jQuery还提供了丰富的动画效果,可以用于创建吸引用户的交互体验。例如,当用户点击查询按钮时,可以添加一个加载...

    jQuery中对异步提交JSON和XML数据的处理方式

    下面将详细讲解如何使用jQuery处理这两种数据类型。 首先,jQuery中的AJAX请求主要有三种基本方法:`$.post()`, `$.get()` 和 `$.ajax()`。这些方法都可以用于异步提交数据,但它们的用法和灵活性有所不同。 1. `$...

    jquery解析xml

    2. **解析XML数据**:在回调函数中,`$(data)`将返回的XML文档转换为一个类似DOM的对象,便于使用jQuery的DOM选择器进行操作。 3. **提取数据**:使用`.find('book')`来定位所有`&lt;book&gt;`元素,然后通过`.each()`...

    java百度搜索(jquery ajax java)

    总的来说,这个项目展示了前端和后端技术的结合,通过jQuery简化前端交互,利用AJAX实现实时搜索,而Java后端则负责处理数据检索和处理逻辑。这种技术组合在现代Web开发中非常常见,能够提供快速响应和流畅的用户...

    基于Jquery的Ajax的Java交互

    在IT行业中,JavaScript库JQuery极大地简化了前端与后端的交互,特别是在处理异步数据交换时,Ajax(Asynchronous JavaScript and XML)技术扮演着关键角色。本篇将深入探讨基于Jquery的Ajax如何与Java后台进行交互...

    java+jsp+ajax+jst+jquery实例

    "java+jsp+ajax+jst+jquery实例"涉及了Web开发中的多个关键技术和实践,主要关注Java后端、JSP(Java Server Pages)前端、Ajax(Asynchronous JavaScript and XML)、JST(JavaScript Templates)以及jQuery这五个...

    xml数据前后台解析:jdom与dom4j源码,程序可以跑

    在这个例子中,jQuery会自动将服务器返回的XML转换为一个可操作的jQuery对象,然后遍历XML中的元素,获取属性值并展示在页面上。 总结,XML数据解析在IT领域中扮演着重要角色。JDOM和DOM4J作为Java环境下的XML处理...

    jquery 分页和验证(java版)

    本实例将重点关注如何结合Java和jQuery实现分页与验证功能,特别是针对SSH(Struts2、Spring、Hibernate)框架的应用。 首先,SSH框架是一个流行的Java Web开发框架组合,用于构建高效、可维护的Web应用。Struts2...

    struts2 jquery xml

    Struts2 jQuery XML 是一个基于Java的Web开发框架的组合,它将Apache Struts2的MVC架构与jQuery库结合,提供了丰富的用户界面组件和更流畅的AJAX交互。Struts2是一个强大的、灵活的MVC框架,而jQuery则简化了...

Global site tag (gtag.js) - Google Analytics