<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ page contentType="text/html; charset=UTF-8"%>
<head>
<META http-equiv=Content-Type content="text/html; charset=UTF-8" >
</head>
<script type="text/javascript">
var XMLHttpReq;
//创建XMLHttpRequest对象
if(window.XMLHttpRequest){ //Mozilla 浏览器
xmlhttp = new XMLHttpRequest();
if (xmlhttp.overrideMimeType){ //设置MiME类别
xmlhttp.overrideMimeType('text/xml');
}
}else if (window.ActiveXObject){// IE浏览器
try{
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
}catch (e){
try{
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}catch (e){ }
}
}
//发送请求函数
function sendRequest(url, data){ //初始化、指定处理函数、发送请求的函数
if (!xmlhttp){ //异常,创建对象实例失败
window.alert("不能创建XMLHttpRequest对象实例.");
return false;
}
// 确定发送请求的方式和URL以及是否同步执行下段代码
xmlhttp.open("POST", url, true);
xmlhttp.onreadystatechange = processRequest1; //根据Web服务器应答,触发该状态改变事件
xmlhttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
xmlhttp.send("division=" + data); //发送信息到后台程序
}
//处理返回信息函数
function processRequest(){
if (xmlhttp.readyState == 4){ // 判断对象状态
if (xmlhttp.status == 200) //正常返回信息,状态编号200
{ // 信息已经成功返回,开始处理信息
updateList();
}else{ //页面不正常
alert("您所请求的页面有异常。");
}
}
}
//刷新列表框函数
function refreshList(){
var sort = document.getElementById("sort").value;
if(sort == ""){
clearList();
return;
}
var url = "**?**="+**;
sendRequest(url);
}
//更新列表框中列表函数
function updateList(){
clearList();
var product = document.getElementById("product");
var results = XMLHttpReq.responseXML.getElementsByTagName("name");
var option = null;
for(var i=0;i<results.length;i++){
option = document.createElement("option");
option = appendChild(document.createTextNode(results[i]).firstChild.nodeValue));
product.appendChild(option);
}
}
//清楚列表框中原有选项的函数
function clearList(){
var product = document.getElementById("product");
while(product.childNodes.length > 0){
product.removeChild(product.childNodes[0]);
}
}
</script>
<table>
<select id="sort" οnchange="refreshList();">
<option value="">请选者</option>
<option value="**">**</option>
<option value="**">**</option>
<option value="**">**</option>
</select>
<select id="product" >
</select>
</table>
后台:
//设置输出信息的格式,字符
response.setContentType("text/html; charset=UTF-8");
response.setHeader("Cache-Control","no-cache");
//创建输出流对象
PrintWriter out = response.getWriter();
out.println("<response>");
--
--
out.println("<name>"+**+"</name>");
--
--
out.println("</response>");
out.close();
//