52,797
社区成员
发帖
与我相关
我的任务
分享
查询网页:<input id="proxyReqUrl" type="text" name=proxyReqUrl size="40" >
查询内容:<input id="keyword" type="text" name="keyword" size="40">
<input type="submit" value="确定" onclick="getData();" >
<div id="show">
<!-- 期望在这里显示返回结果 -->
</div>
<script type="text/javascript">
var xmlHttpRequest;
function createXMLHttpRequest(){
if(window.ActiveXObject){
xmlHttpRequest = new ActiveXObject("Microsoft.XMLHTTP");
}else if(window.XMLHttpRequest){
xmlHttpRequest = new XMLHttpRequest();
}
}
function getData(){
var webadd = document.getElementById("proxyReqUrl").value;
var key = document.getElementById("keyword").value;
var u = encodeURI("servlet/AjaxProxyServlet?proxyReqUrl="+webadd+"&keyword="+key);
createXMLHttpRequest();
xmlHttpRequest.onreadystatechange=call;
xmlHttpRequest.open("GET",u,true);
xmlHttpRequest.send(null);
}
function call(){
var xrs = xmlHttpRequest.readyState;
if(xrs==4){
var xs = xmlHttpRequest.status;
if(xs==200){
var rs=xmlHttpRequest.requestText;//这里得不到返回的结果?
}
}
}
</script>
.......
//这里的result 做怎么处理,才能返回给前台加以显示
String result = resp.getContent();
......
servlet中要用流输出
PrintWriter out = response.getWriter();
//这里的result 做怎么处理,才能返回给前台加以显示
String result = resp.getContent();
out.print(result);//不要用println,ln是换行
out.flush();
out.close();
alert(xmlHttpRequest.responseText);这个就后台out.print的值
function call(){
var xrs = xmlHttpRequest.readyState;
if(xrs==4){
var xs = xmlHttpRequest.status;
if(xs==200){
var rs=xmlHttpRequest.requestText;//这里得不到返回的结果?
alert(rs)//如果rs返回的是空值,那么肯定是后台处理出错了,调试一下后台看看
如果返回正确了就这样处理
doucment.getElementById("show").innerHTML=rs;
}
}
}