struts1.x+jdbc 动态三级级联菜单(下拉列表框)

本文介绍了一种使用MySQL数据库和自定义DAO方法实现的三级级联菜单方案。该方案通过前端JavaScript与AJAX技术结合,实现了从学校到班级再到学生的多级数据联动选择。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

网上一些级联菜单通常是客户端数据(就是数据事先定义好),关于动态数据的三级级联菜单很少,今天尝试做了一个

数据库表逻辑很简单 用的Mysql数据库

三张表

学校表 id name

班级表 id name 学校主键

学生表 id name 班级主键

DAO中三个方法

查出所有学校
根据学校id查出相对应的班级
根据班级id查出相对应的学生

POJO类Menu
id name


基本思路

在第一级菜单中(选择学校的) 利用onblur函数(可能有更好的函数,但我不知道。。),调用第一个方法 查出所有的学校,把结果遍历,每循环一次就new一个POJO类,把取出来的id,name存入这个POJO类中,再把POJO类存入List,让相关的Action拿到这个List,把List循环,在每一次取出id和name时,在id与name之间加一条“_”,循环结束后,在结尾加入一个标示用的字符串,最后,再把所有的字符串存入一个新的字符串中,把这个新的字符串输入到前台

前台利用AJAX技术,在创建XMLHttpRequest时,对这个字符串进行拆分,根据标示字符串,把拆分出来相应的name和id写入下拉列表框中,name用于显示,id用于传入下一级菜单的值

这个三级级联菜单到是可以实现功能了,不过做的不是很完美。比如第一次加载时用的JS函数,还有选择某项级联到下一级时,用的是onChange函数,感觉也不是很好。。希望谁能改进改进,做的更好吧。

源码如下
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值