AJAX自学练习 无刷新从数据库后台取数据显示

请求页面request.jsp
复制代码 代码如下:

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
<script language="javascript"><!--
function GetXmlHttpObject(){
    var xmlHttp = null;
    try{
        xmlHttp = new XMLHttpRequest();
    }catch(e){
        try{
            xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
        }catch(e){
            xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
        }
    }
    return xmlHttp;

}
function showMsg(str){
    xmlHttp = GetXmlHttpObject();
    if(xmlHttp == null){
        alert ("you browser don't support the ajax");
         return;

    }
    var url = "response.jsp";
    url = url + "?q="+ str;
    url = url + "&sid ="+ Math.random();
    xmlHttp.onreadystatechange = stateChanged;
    xmlHttp.open("GET", url, true);
    xmlHttp.send(null);
}
function stateChanged()
{
    if(xmlHttp.readyState==4)
    {
        document.getElementById("showHint").innerHTML = xmlHttp.responseText;
    }
}
// --></script>
</head>
<body>
<form name="form1" action="" method="post">
<p>RocarsId:</p>
    <select name="select1" onchange="showMsg(document.form1.select1.options[document.form1.select1.selectedIndex].value)" >
        <option value="140">140</option>
        <option value="150">150</option>
    </select>
    <div id="showHint">Show rocars ccrn messages.</div>
</form>
</body>
</html>

response.jsp
复制代码 代码如下:

<%@ page language="java" contentType="text/plain; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page import="com.lwf.eus.util.*,java.util.*,com.lwf.eus.entity.*,com.lwf.eus.bean.*" %>
<html>
<head>
<title>response the ccrn</title>
</head>
<body>
<%
    String q = request.getParameter("q");
    System.out.println("message:" + q);
    RocarsBean rocars = RocarsEntity.getRocarsListById(q);
%>
<table>
<tr>
<td>RocarsId</td>
<td>RocarsCcrn</td></tr>
<tr>
<td><%=rocars.getRocarsId() %></td>
<td><%=rocars.getCcrn() %></td>
</tr>
</table>
</body>
</html>

注意这里与自学练习一不同的是,request.jsp页面用一个div来显示信息,response.jsp从数据库里面查询出来的内容放在table标签里,其它的html标签不会在div里面显示。