1.
function getAjaxObject (){
var ajax=false;
try {
ajax = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
ajax = new ActiveXObject("Microsoft.XMLHTTP");
} catch (E) {
ajax = false;
}
}
if (!ajax && typeof XMLHttpRequest!='undefined') {
ajax = new XMLHttpRequest();
}
return ajax;
}
2.
function chxm(xd){
// 先获取 ajax 对象
var ajaxo= getAjaxObject ();
//ajax 对象要调用的链接
var url="getxm.jsp?nd="+document.form1.nd.value+"&xd="+xd;
ajaxo.open("POST",url,false);// 打开链接 false 为同步请求
ajaxo.send(null);// 发送请求
var temp=ajaxo.responseText;// 获取返回结果
if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete"){
var obj=document.getElementById("nd");// 获取一个页面上的控件
obj.parentNode.parentNode.childNodes[3].innerHTML=temp;// 通过上面得到的对象和 DOM 操作替换目标控件的内容
}
}
3.
<%@page import="com.victorysoft.oadd.usrmgr.Manager"%>
<%@page import="java.math.BigDecimal"%>
<%@ page language="java" contentType="text/html; charset=gb2312" pageEncoding="gb2312"%>
<%@page import="java.util.List"%>
<%@page import="com.victorysoft.ps.util.Contains"%>
<%@page import="java.util.Map"%>
<%
// 获取用户输入的年度
String nd=request.getParameter("nd");
// 获取用户选定的项目
String xm=request.getParameter("xd")==null?"":request.getParameter("xd");
String result="<select name='xm'>"+"<option value='' ";
if(xm.equals(""))
result+=" selected ";
result+="> 全部 </option>";
// 获取指定年度的项目
List xmlist=Contains.result("select xmid,xmjc from cn_xm where nd='"+nd+"'");
if(xmlist!=null&&xmlist.size()>0){
for(int i=0; i<xmlist.size();i++){
Map xmmap=(Map)xmlist.get(i);
result+="<option value='"+xmmap.get("xmid")+"'";
if(xm.equals(xmmap.get("xmid").toString()))
result+=" selected ";
result+=" >"+xmmap.get("xmjc")+"</option>";
}
}
result+="</select>";
out.print(result);
%>