本文主要是介绍jsp实现连动下拉框.,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
联动下拉选择框,动态获取下一级,根据上一级的条件,显示下一级的内容,这样的好处就是不用一次性从数据库全部读到下拉框,造成内容太多,不太好选择.一级联动知道怎么实现了,多级联动其实也是一样的.这里列出的例子,给大家参考和学习.
联动下拉框,只需要一个JAVA文件,一个JSP文件.
表结构 A,表 id varchar2(10),name varchar2(10)
B 表 id varchar2 ,name varchar2(10)
A表内容: 1 电脑, 2 空调 3 家电
B表内容:1 联想,1 方正,2 海尔, 2 春兰 , 3 LG,3 TCL
MyDbBean.java
import java.sql.*;
public class MyDbBean {
Connection con=null;
public First() {
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
con=DriverManager
.getConnection("jdbc:oracle:thin:@127.0.0.1:1521:test",
"dd","dd");
}
public ResultSet executeQuery (String sql) {
PreparedStatement pstm=null;
ResultSet rs=null;
try {
pstm=con.prepareStatement(sql);
rs=pstm.executeQuery();
return rs;
}
}catch(SQLException e){
e.printStackTrace();
return null;
}catch (Exception e) {
e.printStackTrace();
return null;
}finally{
try{
if(rs!=null)rs.close();
}catch(Exception e){}
}
}
}
TEST.JSP
<%@ page contentType="text/html; charset=GBK" %>
<%@ page import="DataBase.*" %>
<%@ page import="java.sql.*" %>
<%! MyDbBean bean = new MyDbBean();%>
<html>
<head>
<title>
test
</title>
</head>
<body bgcolor="#ffffff">
<form method="post">
<select name="dl" onChange="javascript:window.location=(this.options[this.selectedIndex].value1)">
<%
String id = request.getParameter("id");
String cSql = "select * from a";
ResultSet sqlRst=bean.executeQuery(cSql);
try
{
while(sqlRst.next())
{
String i = sqlRst.getString("id");
String name = sqlRst.getString("name");
if(id == null) id="1";
if (id.equals(i))
{
String temp="./test.jsp?id="+i+"&name="+name;
out.println("<option value="+i+" value1="+temp+" selected>"+name+"</option>");
}
else
{
String temp="./test.jsp?id="+i+"&name="+name;
out.println("<option value="+i+" value1="+temp+">"+name+"</option>");
}
}
}catch(Exception e)
{}
%>
</select>
<select name="dl">
<%
String Csql = null;
if (id == null)
{
Csql="select * from b where id = 1";
}
else
{
Csql="select * from b where id =" +id ;
}
sqlRst=bean.executeQuery(Csql);
try{
while(sqlRst.next())
{
String i = sqlRst.getString("id");
String name = sqlRst.getString("name");
if (id.equals(i))
{
String temp="./test.jsp?id="+i+"&name="+name;
out.println("<option value="+i+" value1="+temp+" selected>"+name+"</option>");
}
else
{
String temp="./test.jsp?id="+i+"&name="+name;
out.println("<option value="+i+" value1="+temp+">"+name+"</option>");
}
}
}catch(Exception e)
{
}
%>
</select>
</form>
</body>
</html>
这篇关于jsp实现连动下拉框.的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!