JavaScript實(shí)現(xiàn)三級(jí)聯(lián)動(dòng)菜單效果
三級(jí)聯(lián)動(dòng)考察的應(yīng)該是對(duì)于數(shù)據(jù)的處理,只要清楚其中的關(guān)系,再多幾級(jí)都是一樣的:
html部分:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>3級(jí)聯(lián)動(dòng)菜單</title>
<script>
var region = {
廣東:
{
"廣州":["廣州1","廣州2","廣州3"],
"珠海":["珠海1","珠海2","珠海3"],
"佛山":["佛山1"]
},
湖南:
{
"常德":["石門(mén)","桃源","臨澧","漢壽"],
"益陽(yáng)":["益陽(yáng)1","益陽(yáng)2","益陽(yáng)3"]
}
}
</script>
</head>
<body>
<select id="province" onchange="change(this.value);">
<option>請(qǐng)選擇省份</option>
</select>
<select id="city" onchange="countyChange(this.value);">
<option>請(qǐng)選擇地市</option>
</select>
<select id="county">
<option>請(qǐng)選擇縣城</option>
</select>
<script src='test.js'></script>
</body>
</html>
js部分:
var province = document.querySelector("#province");
var city = document.querySelector("#city");
var county = document.querySelector("#county");
//二級(jí)聯(lián)動(dòng)不用定義你選的省份,直接用省份(key)來(lái)決定下面的市(value)值
var provinceName = null;
for (ele in region){
var op = new Option(ele , ele , false , false); //new Option("文本","值",true,true).后面兩個(gè)true分別表示默認(rèn)被選中和有效
//console.log(op);
province.options[province.length] = op;
}
var change = function(src){
city.innerHTML = "";
if(src === '請(qǐng)選擇省份'){
var op = new Option('請(qǐng)選擇地市' , '請(qǐng)選擇地市' , false , false);
city.options[0] = op;
}else{
for (index in region[src]){
//console.log(index);
var op = new Option(index , index , false , false);
city.options[city.length] = op;
}
}
//記住選擇省份的值
provinceName=src;
countyChange(city.value)
}
var countyChange = function(src2){
county.innerHTML = "";
if(src2 === '請(qǐng)選擇地市'){
var op = new Option('請(qǐng)選擇縣城','請(qǐng)選擇縣城', false , false);
county.options[0] = op;
}else{
for (index in region[provinceName][src2]){
//console.log(index);
var op = new Option(region[provinceName][src2][index] , region[provinceName][src2][index] , false , false);
county.options[county.length] = op;
}
}
}
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- JS實(shí)多級(jí)聯(lián)動(dòng)下拉菜單類(lèi),簡(jiǎn)單實(shí)現(xiàn)省市區(qū)聯(lián)動(dòng)菜單!
- jsp從數(shù)據(jù)庫(kù)獲取數(shù)據(jù)填充下拉框?qū)崿F(xiàn)二級(jí)聯(lián)動(dòng)菜單的方法
- js實(shí)現(xiàn)簡(jiǎn)單的聯(lián)動(dòng)菜單效果
- JS簡(jiǎn)單實(shí)現(xiàn)多級(jí)Select聯(lián)動(dòng)菜單效果代碼
- 實(shí)例詳解AngularJS實(shí)現(xiàn)無(wú)限級(jí)聯(lián)動(dòng)菜單
- 從QQ網(wǎng)站中提取的純JS省市區(qū)三級(jí)聯(lián)動(dòng)菜單
- 基于Javascript實(shí)現(xiàn)二級(jí)聯(lián)動(dòng)菜單效果
- JS實(shí)現(xiàn)的五級(jí)聯(lián)動(dòng)菜單效果完整實(shí)例
- PHP+JS三級(jí)菜單聯(lián)動(dòng)菜單實(shí)現(xiàn)方法
- JavaScript實(shí)現(xiàn)聯(lián)動(dòng)菜單特效
相關(guān)文章
微信JS-SDK實(shí)現(xiàn)微信會(huì)員卡功能(給用戶微信卡包里發(fā)送會(huì)員卡)
這篇文章主要介紹了微信JS-SDK實(shí)現(xiàn)微信會(huì)員卡功能(給用戶微信卡包里發(fā)送會(huì)員卡),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07
javascript實(shí)現(xiàn)移動(dòng)端紅包雨頁(yè)面
這篇文章主要為大家詳細(xì)介紹了javascript實(shí)現(xiàn)移動(dòng)端紅包雨頁(yè)面,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-06-06
JS實(shí)現(xiàn)根據(jù)密碼長(zhǎng)度顯示安全條功能
這篇文章主要介紹了基于JS實(shí)現(xiàn)根據(jù)密碼長(zhǎng)度顯示安全條功能,非常不錯(cuò),在一些網(wǎng)站上經(jīng)常會(huì)遇到此功能,需要的的朋友參考下實(shí)現(xiàn)代碼吧2017-03-03
詳解處理bootstrap4不支持遠(yuǎn)程靜態(tài)框問(wèn)題
這篇文章主要介紹了詳解處理bootstrap4不支持遠(yuǎn)程靜態(tài)框問(wèn)題,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-07-07
js jquery ajax的幾種用法總結(jié)(及優(yōu)缺點(diǎn)介紹)
本篇文章只要介紹了js jquery ajax的幾種用法總結(jié)(及優(yōu)缺點(diǎn)介紹),需要的朋友可以過(guò)來(lái)參考下,希望對(duì)大家有所幫助2014-01-01
從數(shù)據(jù)庫(kù)讀取數(shù)據(jù)后將其輸出成html標(biāo)簽的三種方法
需要輸出成html標(biāo)簽時(shí)編譯器卻自動(dòng)幫我們輸出成字符串,這該怎么辦?下面有個(gè)三個(gè)解決方法,一一測(cè)試便知其效果是如何2014-10-10
fiv.js實(shí)現(xiàn)flv文件blob流實(shí)時(shí)播放的項(xiàng)目實(shí)踐
本文主要介紹了fiv.js實(shí)現(xiàn)flv文件blob流實(shí)時(shí)播放的項(xiàng)目實(shí)踐,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-04-04

