基於Jquery實現省份、城市、區縣三級聯動

来源:http://www.cnblogs.com/jianqingwang/archive/2017/06/05/6944146.html
-Advertisement-
Play Games

前端感覺寫的比較少,也是為了練手,下午沒事用來寫了這個三級聯動,也是第一次寫這東西。 據我瞭解,城市信息可以選擇存在資料庫或者直接寫在前端,為了省事,我直接寫在前端,下麵是我的代碼: <!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01 Transitional/ ...


前端感覺寫的比較少,也是為了練手,下午沒事用來寫了這個三級聯動,也是第一次寫這東西。

據我瞭解,城市信息可以選擇存在資料庫或者直接寫在前端,為了省事,我直接寫在前端,下麵是我的代碼:

<!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01 Transitional//EN”
“http://www.w3.org/TR/html4/loose.dtd”>
<html>
<head>
<title></title>
<script src=”http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js”></script>
<script>
$(document).ready(function(){
//省份城市數組
var fujian_city = new Array(‘福州’,’漳州’,’廈門’,’龍岩’,’泉州’,’南平’,’莆田’,’寧德’,’三明’);
var guangdong_city = new Array(‘廣州’,’深圳’,’東莞’,’潮州’,’河源’,’汕頭’,’珠海’,’佛山’,’肇慶’,’韶關’);

//城市下屬區縣數組
var fuzhou_county = new Array(‘鼓樓區’,’台江區’,’平潭’,’晉安區’,’馬尾區’,’福清市’,’長樂市’,’閩侯縣’,’連江縣’,’閩清縣’);
var zhangzhou_county = new Array(‘薌城區’,’龍文區’,’南靖縣’,’平和縣’,’龍海市’,’東山縣’,’華安縣’);
var xiamen_county = new Array(‘湖裡區’,’思明區’,’海滄區’,’集美區’,’同安縣’,’翔安區’);
//獲取省份改變的事件,並設置被選擇省份城市信息
$(“#province”).change(function(){
//清空每次選擇留下的城市信息
$(“#city”).find(“option”).remove();
//設置未選擇的城市預設狀態
$(“#city”).append(‘<option value=”未選擇”>未選擇</option>’);
//獲取被選中省份的值
var province=$(“#province”).val();
//設置城市的自定義函數
$.extend({set_cities:function(province){
var arr_length = province.length;
for(var i=1;i<=arr_length;i++){
var place_info = ‘<option value=’+province[i-1]+’>’+province[i-1]+'</option>’;
$(“#city”).append(place_info);
}
}});
switch(province){
case ‘福建’:
$.set_cities(fujian_city);
break;
case ‘廣東’:
$.set_cities( guangdong_city);
break;
default :
alert(‘沒有寫信息的省份,這裡只展示福建和廣東兩個省份’);
}
})
//獲取改變城市的事件,並設置區縣信息,這裡只寫了福建的福州、漳州、廈門的部分城市信息
$(“#city”).change(function(){
//清空每次選擇留下的區縣信息
$(“#county”).find(“option”).remove();
//設置未選擇的區縣預設狀態
$(“#county”).append(‘<option value=”未選擇”>未選擇</option>’);
//獲取被選中城市的值
var city=$(“#city “).val();
//設置區縣的自定義函數
$.extend({set_counties:function(city){
var arr_length = city.length;
for(var i=1;i<=arr_length;i++){
var place_info = ‘<option value=’+city[i-1]+’>’+city[i-1]+'</option>’;
$(“#county”).append(place_info);
}
}});
switch(city){
case ‘福州’:
$.set_counties(fuzhou_county);
break;
case ‘廈門’:
$.set_counties( xiamen_county);
break;
case ‘漳州’:
$.set_counties( zhangzhou_county);
break;
default :
alert(‘這裡只寫了福建的福州、漳州、廈門的部分城市信息’);
}
})
});
</script>
</head>
<body>
<div>
<ul>
<li>

<select name=”province” id=”province”>
<option value=”福建”>福建</option>
<option value=”廣東”>廣東</option>
<option value=”浙江”>浙江</option>
<option value=”江西”>江西</option>
</select>
</li>
<li>

<select name=”city” id=”city”>
<option value=”0″>未選擇</option>
</select>
</li>
<li>
<select name=”county” id=”county”>
<option value=”0″>未選擇</option>
</select>
</li>
</ul>
</div>
</body>
</html>

效果如下:

主要是做了這個功能,相關代碼都有些備註,淺顯易懂。如果你要使用可以直接繼續添加省份、城市的數據,或者改改採用ajax獲取數據,有不懂的代碼可以留言或者聯繫我。

本人博客:基於Jquery實現省份、城市、區縣三級聯動


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • jquery仿京東商品頁面 京東頁面大家都很熟悉,進入商品頁面把滑鼠放在圖片上旁邊會出現一個放大的效果,接下來就帶大家看看怎麼實現的!!!! 仿京東商品頁面css的代碼!!! 仿京東商品頁面html的代碼!!! 仿京東商品頁面jquery的代碼!!! 仿京東商品頁面的效果!!! 怎麼樣,當我做出來的 ...
  • 1,下載安裝node 訪問 http://nodejs.org ,然後點擊大大的綠色的 install 按鈕,下載完成後直接運行程式,就一切準備就緒。 npm 會隨著安裝包一起安裝, 2,打開代碼行 node -v //查看node版本,如果顯示版本號,則安裝成功。 npm -v //查看npm版本 ...
  • 之前學習中做的筆記,放在有道雲筆記裡面了,分享出來,一起學習啦。 gulp入門篇: http://note.youdao.com/noteshare?id=f0fae7bae57c9deaaa10d2b51c431d75 gulp進階篇: http://note.youdao.com/notesha ...
  • <ul class="ddd"> <li class="solid active">啦啦啦啦</li> <li class="solid">我哦我我</li> <li class="solid">哦哦哦哦</li> <li class="solid">噢噢噢噢</li> <li class="sol ...
  • 1. 2.雙向數據綁定 3.v-if 4.v-show:也是條件渲染指令,和v-if指令不同的是,使用v-show指令的元素始終會被渲染到HTML(但是使用v-if指令的元素如果表達式為假,則不會被渲染到HTML頁面,這裡要註意v-if和v-show的這個區別),它只是簡單地為元素設置CSS的sty ...
  • 作者 | 劉博(又拍雲多媒體開發工程師) 當前為了滿足比較火熱的移動 Web 端直播需求,一系列的 HTML5 直播技術迅速的發展起來。 常見的可用於 HTML5 的直播技術有 HLS、WebSocket 與 WebRTC。今天我向大家介紹WebSocket 與 MSE 相關的技術要點,併在最後通過 ...
  • 之前一直用js的foreach,只是用來迴圈,也不知道它的定義是什麼,知道今天看到一段js, 裡邊用的方式是第一次見到,於是上網一搜。 才知道foreach原來是這樣的 array1.forEach(callbackfn[, thisArg]) 它還有一個可選的參數 具體用法這裡寫的已經很清楚了 看 ...
  • omi cli "omi cli" "omi cli命令" "omi框架" 用戶指南 "文件目錄" "npm 腳本" "npm start" "npm run dist" "代碼分割" "相容 IE8" "插入 CSS" "插入組件局部 CSS" "局部CSS使用圖片" "插入 Less" "插入組 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...