<html>
<body>
联动例子
<form name=form1>
<select name=mClass onchange="changeByValue(this.value)">
<option value="" selected>请选择大类分区</option>
</select>
<select name=mKind>
<option value="" selected>请选择小类分区</option>
</select>
</form>
<script language=javascript><!--
var mKindouterHTML = document.form1.mKind.outerHTML.substr(0, document.form1.mKind.outerHTML.length-9);
function String.prototype.Trim(){return this.replace(/(^\s*)|(\s*$)/g,"");}
function mclass()
{
var mclass = ["html","javascript","vbscript","css","sql","asp"]; var e = document.form1.mClass;
var s = e.outerHTML.substr(0, e.outerHTML.length-9) + "\r\n";
for (var i=0; i<mclass.length; i++){
s += "<option value='"+ mclass[i] +"'>"+ mclass[i] +"</option>\r\n";}
s += "</select>";
e.outerHTML = s;
} mclass();
function changeByValue(val)
{
var mhtml = ["html"];
var mjavascript = ["语句","方法"]
var mvbscript = ["vbscript"]
var mcss = ["css"]
var msql = ["sql"]
var masp = ["asp"]
var e = document.form1.mKind;
var s = mKindouterHTML;
if (val.Trim() == "") {s += "</select>"; e.outerHTML = s; return;}
var a = eval("m"+ val);
for (var i=0; i<a.length; i++){
s += "<option value='"+ a[i] +"'>"+ a[i] +"</option>\r\n";}
s += "</select>";
e.outerHTML = s;
}
// --></script></body>
</html>值改成从服务器中读取就可以了。
<body>
联动例子
<form name=form1>
<select name=mClass onchange="changeByValue(this.value)">
<option value="" selected>请选择大类分区</option>
</select>
<select name=mKind>
<option value="" selected>请选择小类分区</option>
</select>
</form>
<script language=javascript><!--
var mKindouterHTML = document.form1.mKind.outerHTML.substr(0, document.form1.mKind.outerHTML.length-9);
function String.prototype.Trim(){return this.replace(/(^\s*)|(\s*$)/g,"");}
function mclass()
{
var mclass = ["html","javascript","vbscript","css","sql","asp"]; var e = document.form1.mClass;
var s = e.outerHTML.substr(0, e.outerHTML.length-9) + "\r\n";
for (var i=0; i<mclass.length; i++){
s += "<option value='"+ mclass[i] +"'>"+ mclass[i] +"</option>\r\n";}
s += "</select>";
e.outerHTML = s;
} mclass();
function changeByValue(val)
{
var mhtml = ["html"];
var mjavascript = ["语句","方法"]
var mvbscript = ["vbscript"]
var mcss = ["css"]
var msql = ["sql"]
var masp = ["asp"]
var e = document.form1.mKind;
var s = mKindouterHTML;
if (val.Trim() == "") {s += "</select>"; e.outerHTML = s; return;}
var a = eval("m"+ val);
for (var i=0; i<a.length; i++){
s += "<option value='"+ a[i] +"'>"+ a[i] +"</option>\r\n";}
s += "</select>";
e.outerHTML = s;
}
// --></script></body>
</html>值改成从服务器中读取就可以了。
请你帮我看一下以下的这个代码(和你发的差不多):运行时下拉列表框里没有值<script language=javascript>
var professionouterHTML = document.regist.profession.outerHTML.substr(0,
document.regist.profession.outerHTML.length-9);
function college()
{
var collegeName = ["计算机科学与技术学院","机电工程学院","空中交通管理学院","交通工程学院","管理学院","理学院","人文社会科学学院","飞行学院","安全科学与工程学院","乘务学院","职业技术学院","继续教育学院"]; //这些数据可以从数据库中取得 var e = document.regist.college;
var s = e.outerHTML.substr(0, e.outerHTML.length-9) + "\r\n";
for (var i=0; i<collegeName.length; i++){
s += "<option value='"+ collegeName[i] +"'>"+ collegeName[i] +"</option>\r\n";}
s += "</select>";
e.outerHTML = s;
} college();function professionName(val)
{
var 计算机科学与技术学院 = ["计算机科学与技术","计算机应用技术"];
var 机电工程学院 = ["飞行器动力工程", "电气工程及其自动化","电子信息工程","工业工程" ,"
航空宇航推进理论与工程" ,"导航、制导与控制" ,"飞行器设计" ,"人机与环境工程","模式识别与智能系统","航空安全管理"];
var 空中交通管理学院 = ["通信工程","交通运输","通信与信息系统","信号与信息处理","交通运
输规划与管理","交通信息工程及控制","航空安全管理"];
var 交通工程学院 = ["交通工程" ,"物流管理","土木工程","自动化","油气储运工程","交通运输
规划与管理","机械电子工程"];
var 管理学院 = ["工商管理","会计学","财务管理","管理科学与工程","企业管理"];
var 理学院 = ["信息与计算科学","材料物理","材料化学","统计学","计算数学","计算机应用技术"];
var 人文社会科学学院 = ["法学","英语"];
var 飞行学院 = ["飞行技术"];
var 安全科学与工程学院 = ["安全工程","安全技术及工程"];
var 乘务学院 = ["空中乘务"];
var 职业技术学院 = ["商务英语","飞机机电设备维修","通信技术","航空港安全检查","电子商
务","物业管理","旅游与酒店管理","计算机网络技术","电子与信息技术","航空油料储运与应用","计
算机软件","民航运输","民航计划财务","航材管理与外贸","民航特种车辆维修"];
var 继续教育学院 = ["民航各类成人学历教育和在职人员岗位培训"];
var e = document.regist.profession;
var s = professionouterHTML;
if (val == "") {s += "</select>"; e.outerHTML = s; return;}
var a = eval(val);
for (var i=0; i<a.length; i++)
{
s += "<option value='"+ a[i] +"'>"+ a[i] +"</option>\r\n";
}
s += "</select>";
e.outerHTML = s;
}
</script>html 中
<td>所在院系</td>
<td><select name="college" size="1" id="college" onchange="professionName(this.value)">
<option value="">请选择学院</option></select>
所学专业<select name="profession" size="1" id="profession" >
<option value="">请选择专业</option></select>
<select name="tablename" onChange="form1.submit()" >
<option value="请选择表" selected请选择表</option>
<%
request.setCharacterEncoding("gb2312");
String tablename=request.getParameter("tablename");
session.setAttribute("tablename",tablename);
String PKname=request.getParameter("constraint_PKname");
session.setAttribute("PKname",PKname);
if(tablename!=null)out.print("<option value='"+tablename+"' selected >"+tablename+"</option>");
%>
<%
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
String url="jdbc:oracle:thin:@localhost:1521:myOracle";
String user="system";
String password="oracle";
Connection conn= DriverManager.getConnection(url,user,password);
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
ResultSet rs=stmt.executeQuery("select * from "+SystemName+".tablenames");
while(rs.next()){
String t=rs.getString(1);
if(tablename==null) out.print("<option value='"+t+"'>"+t+"</option>");
else if(!(tablename.equals(t)))
out.print("<option value='"+t+"'>"+t+"</option>");
}
%>
</select>
</div>
</form> <div align="center">
<form name="form2" method="post" action="PK_check.jsp"> <div align="center">
<p>
<select name="colunmname" size="3" multiple>
<option value="请选择属性">请选择属性;</option>
<%
if(tablename!=null){
ResultSet rs2=stmt.executeQuery("select * from "+SystemName+"."+tablename);
ResultSetMetaData meta=rs2.getMetaData();
int col=meta.getColumnCount();
for(int i=1;i<=col;i++){
out.print("<option value="+meta.getColumnName(i)+">"+meta.getColumnName(i)+"</option>");
}
}
stmt.close();
conn.close();
%>
</select>
</p>
<p>
<input type="submit" name="Submit" value="Ìá½»">
<br>
</p>
</div>
<!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=gb2312">
<title>无标题文档</title>
</head>
<script language=javascript>
function college()
{
var collegeName = ["计算机科学与技术学院","机电工程学院","空中交通管理学院","交通工程学院","管理学院","理学院","人文社会科学学院","飞行学院","安全科学与工程学院","乘务学院","职业技术学院","继续教育学院"]; //这些数据可以从数据库中取得
var a= document.regist.textfield.value;
alert(a);
var e = document.regist.college;
var s = e.outerHTML.substr(0, e.outerHTML.length-9) + "\r\n";
for (var i=0; i<collegeName.length; i++){
s += "<option value='"+ collegeName[i] +"'>"+ collegeName[i] +"</option>\r\n";}
s += "</select>";
e.outerHTML = s;
}function professionName(val)
{
var professionouterHTML = document.regist.profession.outerHTML.substr(0,document.regist.profession.outerHTML.length-9);
var 计算机科学与技术学院 = ["计算机科学与技术","计算机应用技术"];
var 机电工程学院 = ["飞行器动力工程", "电气工程及其自动化","电子信息工程","工业工程" ,"航空宇航推进理论与工程" ,"导航、制导与控制" ,"飞行器设计" ,"人机与环境工程","模式识别与智能系统","航空安全管理"];
var 空中交通管理学院 = ["通信工程","交通运输","通信与信息系统","信号与信息处理","交通运输规划与管理","交通信息工程及控制","航空安全管理"];
var 交通工程学院 = ["交通工程" ,"物流管理","土木工程","自动化","油气储运工程","交通运输规划与管理","机械电子工程"];
var 管理学院 = ["工商管理","会计学","财务管理","管理科学与工程","企业管理"];
var 理学院 = ["信息与计算科学","材料物理","材料化学","统计学","计算数学","计算机应用技术"];
var 人文社会科学学院 = ["法学","英语"];
var 飞行学院 = ["飞行技术"];
var 安全科学与工程学院 = ["安全工程","安全技术及工程"];
var 乘务学院 = ["空中乘务"];
var 职业技术学院 = ["商务英语","飞机机电设备维修","通信技术","航空港安全检查","电子商务","物业管理","旅游与酒店管理","计算机网络技术","电子与信息技术","航空油料储运与应用","计算机软件","民航运输","民航计划财务","航材管理与外贸","民航特种车辆维修"];
var 继续教育学院 = ["民航各类成人学历教育和在职人员岗位培训"];
var e = document.regist.profession;
var s = professionouterHTML;
if (val == "") {s += "</select>"; e.outerHTML = s; return;}
var a = eval(val);
for (var i=0; i<a.length; i++)
{
s += "<option value='"+ a[i] +"'>"+ a[i] +"</option>\r\n";
}
s += "</select>";
e.outerHTML = s;
}
</script>
<body onLoad="college()">
<form name ="regist" method="post" action="">
<table>
<tr>
<td>所在院系</td>
<td><select name="college" size="1" id="college" onchange="professionName(this.value)">
<option value="">请选择学院</option></select>
所学专业<select name="profession" size="1" id="profession" >
<option value="">请选择专业</option></select>
</tr>
</table>
</form>
</body>
</html>
在第一个下拉框后加上 onChange="selectDept(this.value)"
var biztype = new Array();
<%
/*生成Javascript代码,控制部门选择后支出类型的联动*/
for (int i = 0; i < parentbizes.size(); i++) {
Business biz = (Business) parentbizes.get(i);
%>
biztype[<%=i%>]=new Array('<%=biz.getDept().getId()%>', '<%=StringUtils.echoSpace(biz.getBizlevel().intValue()) + biz.getBusinessName()%>', '<%=biz.getId()%>');
<%
}
%><%-- 取出所有属于选定部门的支出类型 --%>
function selectDept(deptid) {
document.ExpenseQuery.parentbizID.length = 0;
<%-- 设定支出类型select的第一项 --%>
document.ExpenseQuery.parentbizID.options[0] = new Option('不属于任何分类', '0');
for (i = 0; i < biztype.length; i++) {
if (biztype[i][0] == deptid) {
<%-- 把biztype数组中第一列中的值等于指定部门的id的行的2,3两列值(支出类型名, 支出类型对应的business id) 取出来作为支出类型select的项 --%>
document.ExpenseQuery.parentbizID.options[document.ExpenseQuery.parentbizID.length] = new Option(biztype[i][1], biztype[i][2]);
}
}
}
<%-- 支出类型select初始化 --%>
selectDept(document.ExpenseQuery.deptID.value);难得写啦 考了段我程序的代码 你看看吧