1.html代码:
<%@ page contentType="text/html; charset=gb2312" %>
<%@ page import="java.sql.*" %> <html>
<head>
<!--
放置javascript代码
-->
</head> <body style="font-size: 12px;" bgcolor="eeeeee">
<form name="form1" action="SpecialityRelation_Insert.jsp" method="get">
<img onclick="history.go(-1);" src="../../images/back_blue.gif" onmousemove="this.src='../../images/back_red.gif';" onmouseout="this.src='../../images/back_blue.gif'" style="cursor:hand;">
<hr> <%
String logicalclass_name = request.getParameter("name");
String logicalclass_id = request.getParameter("logicalclass_id");
%> <input name="logicalclass_id" value="<%=logicalclass_id%>" type="hidden">
<table border="1px">
<tr>
<td width="100px">教学班名称</td>
<td width="300px">
<input class="MyInputBox" name="name" value="<%=logicalclass_name%>" style="background:'#dddddd';" size="50" readonly/>
</td>
</tr>
<tr>
<td>所在专业</td>
<td>
<select class="MySelect" name="department" size="1" id="department" onChange="changeDepartment(document.form1.department.options[document.form1.department.selectedIndex].value)">
<%
rs = myDao.execQuery("select * from department");
i=0;
for(rs.next();!rs.isAfterLast();rs.next(),i++)
{
%>
<option value="<%=rs.getString("id")%>"><%=rs.getString("Department_name")%></option>
<%
}
%>
</select> <select class="MySelect" name="division" size="1" id="division" onChange="changeDivision(document.form1.division.options[document.form1.division.selectedIndex].value)">
</select> <input type="hidden" name="Switch" value="false"> <select class="MySelect" name="speciality" id="speciality" size="1" onChange="changeSpeciality(document.form1.speciality.options[document.form1.speciality.selectedIndex].value)"></select> <select class="MySelect" name="Grade" id="Grade" size="1" onChange="changeGrade(document.form1.Grade.options[document.form1.Grade.selectedIndex].value)">
</select> <select class="MySelect" name="ObjectID" size="1">
</select> </td>
</tr> <tr>
<td>说明</td>
<td><textarea name="other" class="MyTextArea" name="other" cols="48" rows="10"></textarea></td>
</tr> <tr>
<td colspan="2" align="right">
<img src="../../images/submit_blue.gif" onmousemove="this.src='../../images/submit_red.gif';" onmouseout="this.src='../../images/submit_blue.gif'" style="cursor:hand;" onclick="document.form1.submit();">
</td>
</tr>
</table>
</form>
</body>
</html>

  


 2.javascript代码:

2.javascript代码
<script language="javascript"> var DeparmentCount; //三级联动菜单代码
DeparmentCount = 0;
var DivisionCount;
DivisionCount = 0;
var SpecialityCount;
SpecialityCount = 0; //GradeCount = 0;
ObjectIDCount = 0;
Department = new Array();
Division = new Array();
Speciality = new Array();
//Grade = new Array();
ObjectID = new Array(); <%
system.pub.oraclesql myDao = new system.pub.oraclesql();
ResultSet rs = myDao.execQuery("select * from division");
int i=0;
for(rs.next();!rs.isAfterLast();rs.next(),i++)
{
%> Division[<%=i%>] = new Array("<%=rs.getString("Division_name")%>","<%=rs.getString("department_id")%>","<%=rs.getString("id")%>"); <%
}//for
%> DivisionCount = <%=i%>;
<%
System.out.println("debug....1");
rs = myDao.execQuery("select * from speciality");
i=0;
for(rs.next();!rs.isAfterLast();rs.next(),i++)
{
%> Speciality[<%=i%>] = new Array("<%=rs.getString("Speciality_name")%>","<%=rs.getString("division_id")%>","<%=rs.getString("id")%>"); <%
}//for
%>
SpecialityCount = <%=i%>; <%
rs = myDao.execQuery("select distinct speciality_id,grade,object_id,name from student t,object o where o.id= t.object_id");
i=0;
for(rs.next();!rs.isAfterLast();rs.next(),i++)
{
%> ObjectID[<%=i%>] = new Array("<%=rs.getString("speciality_id")%>","<%=rs.getString("grade")%>","<%=rs.getString("object_id")%>","<%=rs.getString("name")%>"); <%
}//for
%> ObjectIDCount = <%=i%>; function changeDepartment(DepartmentId)
{
document.form1.Switch.value="false";
document.form1.division.length = 0;
var DepartmentId = DepartmentId;
var i;
for (i=0;i < DivisionCount; i++)
{
if (Division[i][1] == DepartmentId)
{
document.form1.division.options[document.form1.division.length] = new Option(Division[i][0], Division[i][2]);
}
}
changeDivision(document.form1.division.value);
if(document.form1.division.length!=0)
{
document.form1.division.style.visibility = 'visible';
}
else
{
document.form1.division.style.visibility = 'hidden';
} } function changeDivision(DivisionId)
{
document.form1.Switch.value="false";
document.form1.speciality.length = 0;
var DivisionId = DivisionId;
var i;
for (i=0;i < SpecialityCount; i++)
{
if (Speciality[i][1] == DivisionId)
{
document.form1.speciality.options[document.form1.speciality.length] = new Option(Speciality[i][0], Speciality[i][2]);
}
}
if(document.form1.speciality.length!=0)
{
document.form1.speciality.style.visibility = 'visible';
}
else
{
document.form1.speciality.style.visibility = 'hidden';
document.form1.Grade.style.visibility = 'hidden';
document.form1.ObjectID.style.visibility = 'hidden'; }
changeSpeciality(document.form1.speciality.value);
} function changeSpeciality(SpecialityID)
{
document.form1.Switch.value="false";
document.form1.Grade.length = 0;
var SpecialityID = SpecialityID;
var i,j;
var flag = 0;
for (i=0;i < ObjectIDCount; i++)
{
if(ObjectID[i][0] == SpecialityID)
{
for(j=0,flag=0;j<document.form1.Grade.length;j++)
{
if(document.form1.Grade.options[j].value==ObjectID[i][1])
{
flag = 1;
break;
}
}
if(flag!=1)
{
document.form1.Grade.options[document.form1.Grade.length] = new Option(ObjectID[i][1], ObjectID[i][1]);
}
}
}
if(document.form1.Grade.length!=0)
{
document.form1.Grade.style.visibility = 'visible';
}
else
{
document.form1.Grade.style.visibility = 'hidden';
document.form1.ObjectID.style.visibility ='hidden';
}
changeGrade(document.form1.Grade.value);
} function changeGrade(GradeID)
{
document.form1.Switch.value="false";
document.form1.ObjectID.length = 0;
var GradeID = GradeID;
var i;
for (i=0;i < ObjectIDCount; i++)
{
if(ObjectID[i][1] == GradeID && ObjectID[i][0] == document.form1.speciality.value)
{
document.form1.ObjectID.options[document.form1.ObjectID.length] = new Option(ObjectID[i][3],ObjectID[i][2]);
}
}
if(document.form1.ObjectID.length!=0)
{
document.form1.ObjectID.style.visibility = 'visible';
}
else
{
document.form1.ObjectID.style.visibility = 'hidden';
}
} function initialSelect()
{
changeDepartment(document.form1.department.options[document.form1.department.selectedIndex].value);
} </script>

  

 

javascript级联菜单,数据从数据库中获取的更多相关文章

  1. JSP的数据从数据库中获取导入type=date的input标签中

    jsp 页面最开始加上 <%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %> & ...

  2. Django Form 实时从数据库中获取数据

    修改 models.py 添加 class UserType(models.Model): caption = models.CharField(max_length=32) 执行命令,生成数据库 p ...

  3. 关于EntityFramework 更新数据记录时字段全部更新问题和不从数据库中获取直接更新记录

    一.一直对这个比较疑惑感觉只修改一条数据记录的一个字段结果更新Savechages后跟踪生成sql竟然是全部被修改,感觉微软怎么这么傻,总觉得会有其它方式可以只更新部分字段,但一直没有找到相关设置,最 ...

  4. 使用python读取配置文件并从mysql数据库中获取数据进行传参(基于Httprunner)

    最近在使用httprunner进行接口测试,在传参时,用到了三种方法:(1)从csv文件中获取:(2)在config中声名然后进行引用:(3)从函数中获取.在测试过程中,往往有些参数是需要从数据库中获 ...

  5. insert 一条数据 然后拿出这条数据在数据库中生成的ID

    [insert 一条数据 然后拿出这条数据在数据库中生成的ID] <insert id="insert" parameterType="management&quo ...

  6. MOOC(14)- 从数据库中获取预期结果

    数据库中的预期结果写的是SQL语句 从表格中读取到SQL语句,再去数据库获取真正的预期结果 # -*- coding: utf-8 -*- # @Time : 2020/2/18 9:50 # @Fi ...

  7. ASP.NET MVC使用jQuery来POST数据至数据库中

    学习ASP.NET MVC程序,结合jQuery客户端代码,Post数据至数据库去.Insus.NET今天写一个完整性的例子. 在数据库中,创建一个表[dbo].[TestUser]: 既然是把数据存 ...

  8. PostgreSQL数据库中获取表主键名称

    PostgreSQL数据库中获取表主键名称 一.如下表示,要获取teacher表的主键信息: select pg_constraint.conname as pk_name,pg_attribute. ...

  9. php框架中的phalcon框架的安装,及初步认识,从表单提交简单的数据到数据库中

    php框架中的phalcon框架的安装,及初步认识,从表单提交简单的数据到数据库中 1.phalcon框架的安装: phalcon框架在windows本地安装可以利用wamp软件,安装之后可以查看对应 ...

随机推荐

  1. C语言-删除注释

    C语言中的注释,不嵌套,一律使用/*   */的形式.不过双引号中的/*  */则不能算是注释. 以下是正确的代码 /* * ===================================== ...

  2. 一键复制功能 - Vue

    经常遇到一键复制功能,简单记录一下.这里使用的是clipboard插件:https://clipboardjs.com/ 第一步 安装:npm install clipboard --save 第二步 ...

  3. NSPredicate用法总结(Cocoa框架中的NSPredicate用于查询,原理和用法都类似于SQL中的where,作用相当于数据库的过滤取)

    简述:Cocoa框架中的NSPredicate用于查询,原理和用法都类似于SQL中的where,作用相当于数据库的过滤取. 定义(最常用到的方法): NSPredicate *ca = [NSPred ...

  4. C#控制台应用程序之选课系统

    本程序以文本文件作为存储媒介,实现了一个简化版的选课系统,主要实现了以下功能 对学生信息的增删改查 对课程信息的增删改查 对学生选课的增删改查 using System; using System.C ...

  5. 【PAT】1016 部分A+B(15 分)

    1016 部分A+B(15 分) 正整数 A 的“D​A​​(为 1 位整数)部分”定义为由 A 中所有 D​A​​ 组成的新整数 P​A​​.例如:给定 A=3862767,D​A​​=6,则 A  ...

  6. Asp.net MVC4 +EF6开发的个人网站源码和介绍(仅供新手学习)

    本项目是我去年利用业余时间开发的,采用的是asp.net mvc 4 +EF6+三层架构,适合新手进行学习,高手就没有什么价值了,可以直接跳过. 源码和数据库下载(已上传到git):https://g ...

  7. Python全栈开发之13、CSS

    一.css简介 CSS 是 Cascading Style Sheets的缩写,用来设计网页的样式布局,以及大小来适应不同的屏幕等,使网页的样式和网页数据分离, 二.导入css 导入css有4种方式: ...

  8. File.separator与 \分隔符

    在Windows下的路径分隔符和Linux下的路径分隔符是不一样的,当直接使用绝对路径时,跨平台会暴出“No such file or diretory”的异常. 比如说要在temp目录下建立一个te ...

  9. 8-1 binpacking uva1149(贪心)

    题意:给定N个物品的重量Li  背包的容量M 同时要求每个背包最多装两个物品 求至少要多少个背包才能装下所有物品 简单贪心  注意输出: #include<bits/stdc++.h> u ...

  10. 46:求1+2+...+n

    /** * 面试题46:求1+2+...+n * 求1+2+3+...+n,要求不能使用乘除法.for.while.if.else.switch.case等关键字及条件判断语句(A?B:C). */ ...