/* * Returns a new XMLHttpRequest object, or false if this browser * doesn't support it */ function newXMLHttpRequest() { var xmlreq = false; if (window.XMLHttpRequest) { // Create XMLHttpRequest object in non-Microsoft browsers xmlreq = new XMLHttpRequest(); } else if (window.ActiveXObject) { // Create XMLHttpRequest via MS ActiveX try { // Try to create XMLHttpRequest in later versions // of Internet Explorer xmlreq = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e1) { // Failed to create required ActiveXObject try { // Try version supported by older versions // of Internet Explorer xmlreq = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e2) { // Unable to create an XMLHttpRequest with ActiveX } } } return xmlreq; } /** *url 提交的路径 *parameters 参数对(例如:param1=v1¶m2=v2) *callback 回调函数 * *如果要传输的数据过长需要将数据组织成参数对的形式传到parameters *服务器端程序在取数据时候需要增加UTF-8编码,例如 *String curValue = java.net.URLDecoder.decode(request.getParameter(param), "UTF-8"); */ function execService(url, parameters,callback) { var xmlhttp = newXMLHttpRequest(); if(xmlhttp == null){ alert("初始化失败"); return ; } var async = false; if (arguments.length == 3){ async=true; } xmlhttp.open("POST", url, async); //修改url超长的问题 xmlhttp.setRequestHeader("Cache-Control","no-cache"); xmlhttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); if (async) { var f = function() { if (xmlhttp.readyState==4) { callback(xmlhttp.responseText); } } xmlhttp.onreadystatechange = f; } parameters=encodeURI(parameters); parameters=encodeURI(parameters); xmlhttp.send(parameters); if (!async) { var obj = xmlhttp.responseText; if(typeof(obj) =='string' || typeof(obj) =='function' || typeof(obj) =='object') { return xmlhttp.responseText; } } }
getResponse().setContentType("text/html;charset=GBK"); StringBuffer buffer = new StringBuffer(); buffer.append("XXX"); buffer.append("YYY"); getResponse().getWriter().println(buffer.toString()); return null;