方式1:
//请求js <script language="javascript"> var _object; var xmlhttp = null; var interval = null; var rtnData = new Array(); var btype; //判断浏览器类型 //ie和firefox对ajax请求回调函数的调用方式不同 function getOs(){ var OsObject = ""; if(navigator.userAgent.indexOf("MSIE")>0) { return "MSIE"; //IE浏览器 } if(isFirefox=navigator.userAgent.indexOf("Firefox")>0){ return "Firefox"; //Firefox浏览器 } if(isSafari=navigator.userAgent.indexOf("Safari")>0) { return "Safari"; //Safan浏览器 } if(isCamino=navigator.userAgent.indexOf("Camino")>0){ return "Camino"; //Camino浏览器 } if(isMozilla=navigator.userAgent.indexOf("Gecko/")>0){ return "Gecko"; //Gecko浏览器 } } function loadXMLDoc(xmlName,dataTypeId){ //动态请求调用地址 var ivkUrl = "<%=path%>/jsp/DataRequest/autoFindRtnDataGTS.jsp?xmlName=" + xmlName + "&"+ Math.random(); //alert("** ivkUrl = "+ ivkUrl); if (window.XMLHttpRequest){ xmlhttp=new XMLHttpRequest(); }else if (window.ActiveXObject){ xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); } if (xmlhttp){ xmlhttp.open("GET",ivkUrl,false); btype = getOs(); if(btype != "Firefox"){//IE回调state_Change接口 xmlhttp.onreadystatechange = state_Change; } xmlhttp.send(null); if(btype == "Firefox"){//Firefox做特殊处理 var dataTypeId = "<%=dataTypeId%>"; if(dataTypeId == 1){ updatePage();//页面逻辑 } } }else{ alert("Your browser does not support XMLHTTP"); } //每隔10秒调用1次 interval = window.setTimeout("loadXMLDoc('<%=xmlName%>','<%=dataTypeId%>')", 10000); if(rtnData.length == 1 && rtnData[0].downUrl){//1个下载链接 window.clearTimeout(interval); } if(rtnData.length > 1){//多个下载链接 window.clearTimeout(interval); } } function state_Change(){ var dataTypeId = "<%=dataTypeId%>"; if (xmlhttp.readyState==4){ if (xmlhttp.status==200){ if(dataTypeId == 1){ updatePage();//页面逻辑 } } } } //js中解析返回数组数据 rtnData = eval(xmlhttp.responseText);
方式2:
if (xmlhttp){ try{ xmlhttp.open("POST",'DateValidator.do',false); xmlhttp.send(currStartDate+"##"+currEndDate);//参数传递 }catch (exception){ alert(exception); } //js中解析返回数组数据 rtnData = xmlhttp.responseText; .... }else{ alert("Your browser does not support XMLHTTP"); }
java端处理:
String dateString = (String)requestObj.getData("REQUEST_XMLHTTP");//取得ajax提交的参数
String[] dateArray = dateString.split("##");