最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

原生JavaScript實現(xiàn)動態(tài)省市縣三級聯(lián)動下拉框菜單實例代碼

 更新時間:2016年02月03日 15:49:58   投稿:mrr  
像平時購物選擇地址時一樣,通過選擇的省動態(tài)加載城市列表,通過選擇的城市動態(tài)加載縣區(qū)列表,從而可以實現(xiàn)省市縣的三級聯(lián)動,下面使用原生的JavaScript來實現(xiàn)這個功能,需要的朋友參考下吧

像平時購物選擇地址時一樣,通過選擇的省動態(tài)加載城市列表,通過選擇的城市動態(tài)加載縣區(qū)列表,從而可以實現(xiàn)省市縣的三級聯(lián)動,下面使用原生的JavaScript來實現(xiàn)這個功能:

先給大家展示下測試結(jié)果:

未做任何選擇時:

選擇時:

代碼如下所示:

<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title>三級聯(lián)動測試</title>
<script src="jquery-2.1.4.min.js"></script>
<script type="text/javascript">
//用來獲得option元素中selected屬性為true的元素的id
function Get_Selected_Id(place){
var pro = document.getElementById(place);
var Selected_Id = pro.options[pro.selectedIndex].id;
return Selected_Id; //返回selected屬性為true的元素的id
}
//改變下一個級聯(lián)的option元素的內(nèi)容,即加載市或縣
function Get_Next_Place(This_Place_ID,Action){
var Selected_Id = Get_Selected_Id(This_Place_ID); //Selected_Id用來記錄當(dāng)前被選中的省或市的ID
if(Action=='Get_city') //從而可以在下一個級聯(lián)中加載相應(yīng)的市或縣
Add_city(Selected_Id);
else if(Action=='Get_country')
Add_country(Selected_Id);
}
//用來存儲省市區(qū)的數(shù)據(jù)結(jié)構(gòu)
var Place_dict = {
"GuangDong":{
"GuangZhou":["PanYu","HuangPu","TianHe"],
"QingYuan":["QingCheng","YingDe","LianShan"],
"FoShan":["NanHai","ShunDe","SanShui"]
},
"ShanDong":{
"JiNan":["LiXia","ShiZhong","TianQiao"],
"QingDao":["ShiNan","HuangDao","JiaoZhou"]
},
"HuNan":{
"ChangSha":["KaiFu","YuHua","WangCheng"],
"ChenZhou":["BeiHu","SuXian","YongXian"]
}
};
//加載城市選項
function Add_city(Province_Selected_Id){
$("#city").empty();
$("#city").append("<option>City</option>");
$("#country").empty();
$("#country").append("<option>Country</option>");
//上面的兩次清空與兩次添加是為了保持級聯(lián)的一致性
var province_dict = Place_dict[Province_Selected_Id]; //獲得一個省的字典
for(city in province_dict){ //取得省的字典中的城市
//添加內(nèi)容的同時在option標(biāo)簽中添加對應(yīng)的城市ID
var text = "<option"+" id='"+city+"'>"+city+"</option>";
$("#city").append(text);
console.log(text); //用來觀察生成的text數(shù)據(jù)
}
}
//加載縣區(qū)選項
function Add_country(City_Selected_Id){
$("#country").empty();
$("#country").append("<option>Country</option>");
//上面的清空與添加是為了保持級聯(lián)的一致性
var Province_Selected_ID = Get_Selected_Id("province"); //獲得被選中省的ID,從而方便在字典中加載數(shù)據(jù)
var country_list = Place_dict[Province_Selected_ID][City_Selected_Id]; //獲得城市列表
for(index in country_list){
////添加內(nèi)容的同時在option標(biāo)簽中添加對應(yīng)的縣區(qū)ID
var text = "<option"+" id=\'"+country_list[index]+"\'>"+country_list[index]+"</option>";
$("#country").append(text);
console.log(text); //用來觀察生成的text數(shù)據(jù)
}
}
</script>
</head>
<body>
<p>您的收貨地址:</p>
<select id="province" onchange="Get_Next_Place('province','Get_city')">
<option id="Not_data1">Province</option>
<option id="GuangDong" value="GuangDong">GuangDong</option>
<option id="ShanDong" value="ShanDong">ShanDong</option>
<option id="HuNan" value="HuNan">HuNan</option>
</select>
<select id="city" onchange="Get_Next_Place('city','Get_country')">
<option id="Not_data2">City</option>
</select>
<select id="country">
<option id="Not_data3">Country</option>
</select>
<br/>
</body>
</html>

當(dāng)然,省市縣三者都是動態(tài)聯(lián)動的,只要頂級的內(nèi)容發(fā)生改變,所有子級的內(nèi)容也會發(fā)生改變或被重置為City或Country.

以上所述是小編給大家分享的原生JavaScript實現(xiàn)動態(tài)省市縣三級聯(lián)動下拉框菜單實例代碼,希望對大家有所幫助。

相關(guān)文章

  • JavaScript中import用法總結(jié)

    JavaScript中import用法總結(jié)

    在本篇文章里小編給大家分享了關(guān)于JavaScript中import用法知識點,有需要的朋友們可以學(xué)習(xí)下。
    2019-01-01
  • JavaScript中數(shù)字計算時丟失精度問題解決方法

    JavaScript中數(shù)字計算時丟失精度問題解決方法

    在前端開發(fā)中,精度丟失是一個常見的問題,特別是在涉及到浮點數(shù)計算時,下面這篇文章主要給大家介紹了關(guān)于JavaScript中數(shù)字計算時丟失精度問題的解決方法,需要的朋友可以參考下
    2024-09-09
  • Bootstrap實現(xiàn)提示框和彈出框效果

    Bootstrap實現(xiàn)提示框和彈出框效果

    這篇文章主要為大家詳細(xì)介紹了Bootstrap實現(xiàn)彈出框和提示框效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-01-01
  • 淺談js中同名函數(shù)和同名變量的執(zhí)行問題

    淺談js中同名函數(shù)和同名變量的執(zhí)行問題

    下面小編就為大家?guī)硪黄獪\談js中同名函數(shù)和同名變量的執(zhí)行問題。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-02-02
  • JS+CSS實現(xiàn)分類動態(tài)選擇及移動功能效果代碼

    JS+CSS實現(xiàn)分類動態(tài)選擇及移動功能效果代碼

    這篇文章主要介紹了JS+CSS實現(xiàn)分類動態(tài)選擇及移動功能效果代碼,涉及JavaScript實現(xiàn)頁面元素動態(tài)變換效果實現(xiàn)技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-10-10
  • UniApp表單校驗兩種方式對比詳解

    UniApp表單校驗兩種方式對比詳解

    本文對比了UniApp中表單校驗的命令式和聲明式兩種方式,通過實戰(zhàn)示例展示了它們的優(yōu)缺點,并有詳細(xì)的代碼示例供大家參考,需要的朋友可以參考下
    2025-03-03
  • js動態(tài)實現(xiàn)表格添加和刪除操作

    js動態(tài)實現(xiàn)表格添加和刪除操作

    這篇文章主要為大家詳細(xì)介紹了js動態(tài)實現(xiàn)表格添加和刪除操作,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-04-04
  • three.js安裝和使用完整步驟

    three.js安裝和使用完整步驟

    Three.js是一個JavaScript庫,用于在Web瀏覽器中創(chuàng)建3D Web圖形,下面這篇文章主要給大家介紹了關(guān)于three.js安裝和使用的相關(guān)資料,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-11-11
  • Javascript實現(xiàn)可旋轉(zhuǎn)的圓圈實例代碼

    Javascript實現(xiàn)可旋轉(zhuǎn)的圓圈實例代碼

    這篇文章主要介紹了Javascript實現(xiàn)可旋轉(zhuǎn)的圓圈實例代碼,可實現(xiàn)圓圈的旋轉(zhuǎn)與運動效果,涉及javascript動態(tài)操作頁面元素屬性及進(jìn)行相應(yīng)數(shù)學(xué)運算的技巧,需要的朋友可以參考下
    2015-08-08
  • JS延遲加載加快頁面打開速度示例代碼

    JS延遲加載加快頁面打開速度示例代碼

    使用JS延遲加載可以加快打開速度,下面有幾個不錯的示例,感興趣的朋友可以參考下
    2013-12-12

最新評論

苏尼特右旗| 富宁县| 昌乐县| 道真| 玉屏| 弥渡县| 承德县| 左权县| 金湖县| 岳普湖县| 阿瓦提县| 册亨县| 罗源县| 迁安市| 南充市| 濉溪县| 城市| 潼关县| 安阳市| 河曲县| 会东县| 栾川县| 房产| 桂平市| 晋中市| 肇庆市| 三江| 曲水县| 孙吴县| 定西市| 海林市| 通江县| 霸州市| 来安县| 青海省| 巴彦淖尔市| 新疆| 临泉县| 广东省| 皮山县| 滦平县|