JavaScript實現(xiàn)省市聯(lián)動效果
本文實例為大家分享了JavaScript實現(xiàn)省市聯(lián)動的具體代碼,供大家參考,具體內(nèi)容如下
實現(xiàn)效果:
1.當點擊文字時選中對應的下拉菜單
2.選擇省,后面跟本省對應的市
實現(xiàn)過程:
1.獲得省的Dom對象
2.用循環(huán)為省的下拉菜單設(shè)置option子節(jié)點,并將數(shù)組每個pName的值賦給創(chuàng)建的子節(jié)點
3.每次循環(huán)同時為option子節(jié)點設(shè)置value屬性
4.同理在點擊省的同時,為市創(chuàng)建option子節(jié)點,并將cName的值賦給子節(jié)點,設(shè)置屬性
實現(xiàn)細節(jié):
1. 點擊省時采用onchange事件(元素值改變時觸發(fā))
2. 每次為市增加節(jié)點,要將節(jié)點清空,否則市的節(jié)點會疊加,可采用option長度為0, citySel.options.length = 0;
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style>
.box{
width: 500px;
padding: 20px;
border: 1px solid #aaa;
margin: 100px auto;
}
.box select{
width: 150px;
margin: 10px;
}
</style>
<script>
var provs = [{"id":"01","pName":"河南省"},{"id":"02","pName":"河北省"},{"id":"03","pName":"四川省"}];
var citys = [{"id":"001","cName":"安陽市","pId":"01"},{"id":"002","cName":"鄭州市","pId":"01"},{"id":"003","cName":"新鄉(xiāng)市","pId":"01"},{"id":"004","cName":"邯鄲市","pId":"02"},{"id":"005","cName":"石家莊市","pId":"02"},{"id":"006","cName":"合肥市","pId":"02"},{"id":"007","cName":"廣陵市","pId":"03"},{"id":"008","cName":"成都市","pId":"03"},{"id":"009","cName":"重慶市","pId":"03"}];
function $(id){
return document.getElementById(id);
}
window.onload = function (){
var proSel = $('province');
for(var i = 0; i<provs.length; i++){
var Coption = document.createElement('option');
Coption.innerHTML = provs[i].pName;
Coption.setAttribute('value',provs[i].id);
proSel.appendChild(Coption);
}
proSel.onchange = function(){
var city =$('city');
var Pid = this.value;
city.options.length = 0;//把Select的屬性清空
for(var i=0; i<citys.length; i++){
if(Pid == citys[i].pId){
var Noption = document.createElement('option');
Noption.innerHTML = citys[i].cName;
Noption.setAttribute('value',citys[i].id);
city.appendChild(Noption);
}
}
}
}
</script>
</head>
<body>
<div class="box">
請選擇:
<select id="province">
<option value="00">----請選擇----</option>
</select><label for="province">省</label>
<select id="city">
<option value="000">----請選擇----</option>
</select><label for="city">市</label>
</div>
</body>
</html>

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
- 基于JavaScript實現(xiàn)省市聯(lián)動效果
- JavaScript實現(xiàn)省市聯(lián)動過程中bug的解決方法
- 基于JS實現(xiàn)省市聯(lián)動效果代碼分享
- js省市聯(lián)動效果完整實例代碼
- JSON+HTML實現(xiàn)國家省市聯(lián)動選擇效果
- JavaScript二維數(shù)組實現(xiàn)的省市聯(lián)動菜單
- JavaScript省市聯(lián)動實現(xiàn)代碼
- js實現(xiàn)省市聯(lián)動效果的簡單實例
- javascript 09年最新版的省市聯(lián)動
- JavaScript實現(xiàn)簡單省市聯(lián)動
相關(guān)文章
JS實現(xiàn)select選中option觸發(fā)事件操作示例
這篇文章主要介紹了JS實現(xiàn)select選中option觸發(fā)事件操作,結(jié)合實例形式總結(jié)分析了javascript針對select下拉選中option項觸發(fā)事件相關(guān)操作技巧,需要的朋友可以參考下2018-07-07
javascript實現(xiàn)Email郵件顯示與刪除功能
這篇文章主要介紹了javascript實現(xiàn)Email郵件顯示與刪除功能,需要的朋友可以參考下2015-11-11
JS中跨頁面調(diào)用變量和函數(shù)的方法(例如a.js 和 b.js中互相調(diào)用)
下面小編就為大家?guī)硪黄狫S中跨頁面調(diào)用變量和函數(shù)的方法(例如a.js 和 b.js中互相調(diào)用)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-11-11
javascript面向?qū)ο笾蚕沓蓡T屬性與方法及prototype關(guān)鍵字用法
這篇文章主要介紹了javascript面向?qū)ο笾蚕沓蓡T屬性與方法及prototype關(guān)鍵字用法,實例分析了prototype關(guān)鍵字在共享成員屬性與方法中的原理與使用技巧,需要的朋友可以參考下2015-01-01

