佳木斯湛栽影视文化发展公司

主頁 > 知識庫 > select下拉菜單實現(xiàn)二級聯(lián)動效果

select下拉菜單實現(xiàn)二級聯(lián)動效果

熱門標(biāo)簽:鐵路電話系統(tǒng) 服務(wù)器配置 銀行業(yè)務(wù) 美圖手機 網(wǎng)站文章發(fā)布 呼叫中心市場需求 智能手機 檢查注冊表項

需求:建立年級、班級兩個數(shù)據(jù)表,獲取年級表信息,根據(jù)年級,獲取相應(yīng)的班級

效果圖:

不完美的地方就是在不選擇年級的時候,是不能選擇任何班級的。

代碼部分

首先是建立兩個表的實體

需要注意的就是寫注解了。代碼就不貼了。

DAO層代碼

年級DAO

年級的DAO層沒什么代碼,就是繼承那三個類,具體用到哪個我也不清楚,就直接都繼承了。

public interface GraceDAO extends PagingAndSortingRepositoryGrace, String>,JpaSpecificationExecutorGrace>,JpaRepositoryGrace, String>
{ 
}

班級DAO

班級DAO里面就這一行代碼,用的是內(nèi)置的findBy方法,我的gid在數(shù)據(jù)庫中是int型,在這里為了方便用的string型(我的可以實現(xiàn)操作,不可以的話強制轉(zhuǎn)型成int就可以了,問題不大)

ListCla> findByGid(String gid);

service層

年級

年級這里不需要有什么操作,直接查出全部就可以了,所以我就用了內(nèi)置的findAll方法

@Service
public class GraceService {
 @Autowired
 private GraceDAO graceDAO;
 public ListGrace> findAll(){
 return graceDAO.findAll();
 }
}
///////下面是內(nèi)置findAll方法的注釋什么的。用不到,只是貼出來給大家看一下
/*
 * (non-Javadoc)
 * @see org.springframework.data.repository.CrudRepository#findAll()
 */
 ListT> findAll();

班級

班級這里要根據(jù)獲取到的gid進行查詢

public ListCla> findByGid(String gid){
 return claDAO.findByGid(gid);
 }

Controller層

//查詢所有年級信息
@RequestMapping("grace")
@ResponseBody
public ListGrace> grace(){
 return graceService.findAll();
}
//根據(jù)年級的gid獲取班級信息
@RequestMapping("cla")
@ResponseBody
public ListCla> 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//可以讓年級的下拉框默認(rèn)選擇option value="0">----請選擇年級--- /option>項
 },
 mounted(){//頁面加載時開始加載下面的兩個方法
 this.grace();//年級
 this.claa();//班級,為了避免class關(guān)鍵字,用的其他名字
 },
 methods:{//自定義方法
 grace:function(){
 $.post("/work/grace",{},function(data){
 vm.grac = data;
 });
 },
 claa:function(){
 //alert(this.gid);
 //傳參:傳遞當(dāng)前選中的gid
 $.post("/work/cla",{gid:this.gid},function(data){
 //alert(JSON.stringify(data));
 vm.cla = data;
 });
 },
 }
});

總結(jié)

以上所述是小編給大家介紹的select下拉菜單實現(xiàn)二級聯(lián)動效果,希望對大家有所幫助!

您可能感興趣的文章:
  • js動態(tài)設(shè)置select下拉菜單的默認(rèn)選中項實例
  • 詳解Vue用自定義指令完成一個下拉菜單(select組件)
  • jQuery插件cxSelect多級聯(lián)動下拉菜單實例解析
  • jQuery模擬select實現(xiàn)下拉菜單功能
  • js實現(xiàn)select二級聯(lián)動下拉菜單
  • yii2框架中使用下拉菜單的自動搜索yii-widget-select2實例分析
  • jQuery實現(xiàn)非常實用漂亮的select下拉菜單選擇效果
  • jsp中將后臺傳遞過來的json格式的list數(shù)據(jù)綁定到下拉菜單select

標(biāo)簽:樂山 新疆 紅河 滄州 河南 沈陽 上海 長治

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《select下拉菜單實現(xiàn)二級聯(lián)動效果》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    安岳县| 佛冈县| 东平县| 林周县| 涪陵区| 盘山县| 左权县| 玛曲县| 泰州市| 天长市| 颍上县| 香格里拉县| 西宁市| 磐石市| 天峻县| 河北省| 昌平区| 黔西| 乾安县| 怀柔区| 库车县| 六安市| 桓台县| 张家港市| 陵川县| 元江| 墨江| 柯坪县| 吴旗县| 元江| 涿州市| 丰镇市| 射洪县| 鹰潭市| 吉隆县| 阿勒泰市| 宜黄县| 无为县| 宁都县| 德化县| 固始县|