六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 25|回复: 0

java 返回xml jquery处理

[复制链接]

升级  72%

46

主题

46

主题

46

主题

秀才

Rank: 2

积分
158
 楼主| 发表于 2013-1-23 02:11:03 | 显示全部楼层 |阅读模式
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 = "";    }}
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表