0
点赞
收藏
分享

微信扫一扫

ajax中responseText与responseXML区别


源:http://lou888.blog.hexun.com/46543491_d.html
评:


一、ajax中responseText与responseXML区别
1、"responseText”属性以字符串形式返回HTTP响应;“responseXML”属性以XML形式返回HTTP响应。

function getTel() { 

 var telText = document.getElementById("mantel"); 

 telText.value = ""; 

 if(xmlHttp.readyState == 4) { 

 if (xmlHttp.status == 200) { 

 var message = xmlHttp.responseText; 

 telText.value = message; 

 } 

 } 

}


2、“responseXML”属性返回了一份XML文档对象,可以使用W3C DOM节点树方法和属性对该XML文档对象进行检查和解析。

function getUserInfo() { 

 var peoplemobile=document.getElementById("_Peoplemobile"); 

 if(xmlHttp.readyState == 4) { 

 if (xmlHttp.status == 200) { 

 var xmlDoc = xmlHttp.responseXML.documentElement; 

 var xSel = xmlDoc.getElementsByTagName("select");//得到xml文档中,节点为select的对象 


 for (var i=0;i<xSel.length;i++){ 

 var xValue = xSel[i].childNodes[0].firstChild.nodeValue;//得到select节点下的第一个节点 

 var xText = xSel[i].childNodes[1].firstChild.nodeValue; //得到select节点下的第二个节点 

 if(xValue=='peoplemobile'){ 

 peoplemobile.value=xText; 

 } 


 } 

 } 

 } 

}


二、java中的代码

/** 

 * ajax获得用户电话号码,返回文本 

 * @param mapping 

 * @param form 

 * @param request 

 * @param response 

 * @return 

 * @throws DataAccessException 

 * @throws IOException 

 * @throws ParseException 

 */ 

 public ActionForward toGetTelNumber(ActionMapping mapping, ActionForm form, 

 HttpServletRequest request, HttpServletResponse response) 

 throws DataAccessException, IOException, ParseException { 

 String username = request.getParameter("person_id"); 

 String tel = releasePlanService.getTelByName(username); 

 if (tel != null) { 

 response.setContentType("text/html;charset=UTF-8"); 

 PrintWriter out = response.getWriter(); 

 out.print(tel); 

 return null; 

 } else { 

 tel = ""; 

 response.setContentType("text/xml;charset=UTF-8"); 

 PrintWriter out = response.getWriter(); 

 out.print(tel); 

 return null; 

 } 


 } 

/** 

 * ajax获得用户信息,返回xml 

 * @param mapping 

 * @param form 

 * @param request 

 * @param response 

 * @return 

 * @throws DataAccessException 

 * @throws IOException 

 * @throws ParseException 

 */ 

 public ActionForward togetUserInfo(ActionMapping mapping, ActionForm form, 

 HttpServletRequest request, HttpServletResponse response) 

 throws DataAccessException, IOException, ParseException { 

 String userid = request.getParameter("userid"); 


 response.setContentType("text/xml;charset=UTF-8"); 

 response.setHeader("Cache-Control", "no-cache"); 

 String xml_start = "<?xml version = \"1.0\" encoding = \"UTF-8\"?>"; 

 xml_start += "<selects>"; 

 String xml_end = "</selects>"; 

 String xml = ""; 

 String last_xml = ""; 

 try { 

 UserInfoExtendBean userInfoExtendBean=userInfoService.select(userid); 

 String mobile=userInfoExtendBean.getMobile()!=null?userInfoExtendBean.getMobile():"无"; 

 String tel=userInfoExtendBean.getTel()!=null?userInfoExtendBean.getTel():"无"; 

 String mail=userInfoExtendBean.getEmail()!=null?userInfoExtendBean.getEmail():"无"; 

 xml = xml + "<select><value>" + "peoplemobile" 

 + "</value><text>" + mobile 

 + "</text></select>" 

 + "<select><value>" + "peopletel" 

 + "</value><text>" + tel 

 + "</text></select>" 

 + "<select><value>" + "email" 

 + "</value><text>" + mail 

 + "</text></select>";; 

 last_xml = xml_start + xml + xml_end; 


 response.getWriter().print(last_xml); 

 } catch (Exception e) { 

 return mapping.findForward("error"); 

 } 

 return null; 


 }

举报

相关推荐

0 条评论