时间:2021-05-26
需求:建立年级、班级两个数据表,获取年级表信息,根据年级,获取相应的班级
效果图:
不完美的地方就是在不选择年级的时候,是不能选择任何班级的。
代码部分
首先是建立两个表的实体
需要注意的就是写注解了。代码就不贴了。
DAO层代码
年级DAO
年级的DAO层没什么代码,就是继承那三个类,具体用到哪个我也不清楚,就直接都继承了。
public interface GraceDAO extends PagingAndSortingRepository<Grace, String>,JpaSpecificationExecutor<Grace>,JpaRepository<Grace, String>{ }班级DAO
班级DAO里面就这一行代码,用的是内置的findBy方法,我的gid在数据库中是int型,在这里为了方便用的string型(我的可以实现操作,不可以的话强制转型成int就可以了,问题不大)
List<Cla> findByGid(String gid);
service层
年级
年级这里不需要有什么操作,直接查出全部就可以了,所以我就用了内置的findAll方法
@Servicepublic class GraceService { @Autowired private GraceDAO graceDAO; public List<Grace> findAll(){ return graceDAO.findAll(); }}///////下面是内置findAll方法的注释什么的。用不到,只是贴出来给大家看一下/* * (non-Javadoc) * @see org.springframework.data.repository.CrudRepository#findAll() */ List<T> findAll();班级
班级这里要根据获取到的gid进行查询
public List<Cla> findByGid(String gid){ return claDAO.findByGid(gid); }Controller层
//查询所有年级信息@RequestMapping("grace")@ResponseBodypublic List<Grace> grace(){ return graceService.findAll();}//根据年级的gid获取班级信息@RequestMapping("cla")@ResponseBodypublic List<Cla> cla(HttpServletRequest req){ String gid = req.getParameter("gid"); //System.out.println(gid); return claService.findByGid(gid);}前端代码
html部分
<div id="app">年级:<select v-on:change="claa()" v-model="gid"> <option value="0">----请选择年级--- </option> <option v-for="gra in grac" :value="gra.gid">{{gra.gname}}</option></select>班级:<select> <option v-for="cl in cla">{{cl.cname}}</option></select></div>js部分
var vm = new Vue({el: '#app', data:{ grac:[], cla:[], gid:0//可以让年级的下拉框默认选择<option value="0">----请选择年级--- </option>项 }, mounted(){//页面加载时开始加载下面的两个方法 this.grace();//年级 this.claa();//班级,为了避免class关键字,用的其他名字 }, methods:{//自定义方法 grace:function(){ $.post("/work/grace",{},function(data){ vm.grac = data; }); }, claa:function(){ //alert(this.gid); //传参:传递当前选中的gid $.post("/work/cla",{gid:this.gid},function(data){ //alert(JSON.stringify(data)); vm.cla = data; }); }, }});总结
以上所述是小编给大家介绍的select下拉菜单实现二级联动效果,希望对大家有所帮助!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例讲述了AngularJS实现的select二级联动下拉菜单功能。分享给大家供大家参考,具体如下:所属分类:--请选择----请选择--varcontan
本文实例讲述了php+mysql实现的二级联动菜单效果。分享给大家供大家参考,具体如下:生成学院专业级联下拉菜单测试varmajorCount;//存储专业记录
二级联动下拉菜单选择应用在在很多地方,比如说省市下拉联动,商品大小类下拉选择联动。本文将通过实例讲解使用jQuery+PHP+MySQL来实现大小分类二级下拉联
本文实例为大家分享了js实现二级联动下拉菜单的具体代码,供大家参考,具体内容如下js代码部分:/**全国二级城市联动js版*/functionDsy(){thi
bootstrap-select是boot的下拉搜索插件,使用的时候有时我们需要动态从后台或者直接加载动态数据。下面是根据一级下拉菜单,动态加载二级联动方式。(