web.xml
<servlet>
<servlet-name>test1</servlet-name>
<servlet-class>test1</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>test1</servlet-name>
<url-pattern>test1</url-pattern>
</servlet-mapping>
浏览器端:
test11.jsp:
<%@ page language="java" import="java.util.*" pageEncoding="gbk"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>AJAX.html</title>
</head>
<script type="text/javascript">
/*通过异步传输XMLHTTP发送参数到ajaxServlet,返回符合条件的XML文档*/
var req=false;
//创建一个XMLHttpRequest对象
function createXMLHttpRequest(){
if(window.XMLHttpRequest){ //Mozilla
req=new XMLHttpRequest();
}
else if(window.ActiveXObject){
try{
req=new ActiveXObject("Msxml2.XMLHTTP");
}catch(e){
try{
req=new ActiveXObject("Microsoft.XMLHTTP");
}catch(e){}
}
}
}
/*产生响应事件*/
function getResult()
{
createXMLHttpRequest()
var name=document.getElementById("me").value;
var url='test1?action='+name;
if(req)
{
req.open("GET",url, true);
req.onreadystatechange = complete;
req.send(null);
}
}
/*分析返回的XML文档*/
function complete()
{
if (req.readyState == 4)
{
if (req.status == 200)
{
var type = req.responseXML.getElementsByTagName("type_name");
var str=new Array();
for(var i=0;i<type.length;i++)
{
str[i]=type[i].firstChild.data; //获得节点数据
document.all['td'].innerHTML+=" "+str[i];
}
}
}
}
</script>
<body onLoad="getResult()">
<form action="test1" method="post">
<table width="80%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td id="td"> </td>
<td><input type="text" id="me" value="sunxf" onkeyup="getResult()"/></td>
<td><input type="button" id="submit" onclick="getResult()"/>
</tr>
</table>
</form>
</body>
服务器端:
test1.java
package aa;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class test1
extends HttpServlet
{
private static final String CONTENT_TYPE="text/xml; charset=gb2312";
public void init()
throws ServletException
{
}
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException,IOException
{
response.setContentType(CONTENT_TYPE);
PrintWriter out=response.getWriter();
String action=request.getParameter("action");
System.out.println(action);
if(("send").equals(action))
{ //生成xml
StringBuffer sb=new StringBuffer("<type>");
sb.append("<type_name>AA</type_name>");
sb.append("<type_name>BB</type_name>");
sb.append("<type_name>CC</type_name>");
sb.append("<type_name>DD</type_name>");
sb.append("</type>");
out.write(sb.toString());
out.close();
}
}
}
来源:https://www.cnblogs.com/sunxiangfu/archive/2008/07/22/4261157.html