本文實例講述了jquery+php后臺實現省市區聯動功能。分享給大家供大家參考,具體如下:
JS:
$("#from_prov_id,#from_city_id").change(function () { var current_prov_id = $(this).val(); var _this = this; $.ajax({ type:'get', url:"{:url('getarea')}?id="+current_prov_id, success:function (data) { var data = JSON.parse(data); if (data.list2==''){ $('#from_area_id option').remove(); $("#from_area_id").append( '<option value="">選擇區(縣)</option>'); $.each(data.list1,function (index,item) { $("#from_area_id").append( '<option value="'+item.id+'">'+item.name+'</option>'); }); }else{ $("#from_city_id option").remove(); $('#from_area_id option').remove(); $("#from_city_id").append( '<option value="">選擇城市</option>'); $.each(data.list1,function (index,item) { $("#from_city_id").append( '<option value="'+item.id+'">'+item.name+'</option>'); }); $("#from_area_id").append( '<option value="">選擇區(縣)</option>'); $.each(data.list2,function (index,item) { $("#from_area_id").append( '<option value="'+item.id+'">'+item.name+'</option>'); }); } } }) });
html:
<select name="from_prov_id" id="from_prov_id" class="select"> <option value="">選擇省份</option> <option value="id">北京</option> <option value="id">上海</option> <option value="id">浙江</option> <option value="id">四川</option> <option value="id">山西</option> <option value="id">江蘇</option> {/volist} </select> <select name="from_city_id" id="from_city_id" class="select"> <option value="">選擇城市</option> </select> <select name="from_area_id" id="from_area_id" class="select"> <option value="">選擇區縣</option> </select>
php:
public function area(){ $area = new Area(); $id = input('id'); $list = $area->getList(['pid'=>$id]); $list2 = $area->getList(['pid'=>$list[0]['id']]); return json_encode(['list1'=>$list,'list2'=>$list2]); }
另外,本站在線工具小程序上也有幾款工具采用了省市區聯動功能,感興趣的朋友可以掃描如下小程序碼查看:
更多關于jQuery相關內容感興趣的讀者可查看本站專題:《jQuery表單(form)操作技巧總結》、《jquery數組用法總結》、《jQuery遍歷算法與技巧總結》、《jQuery切換特效與技巧總結》、《jQuery表格(table)操作技巧匯總》、《jQuery擴展技巧總結》、《jQuery常用插件及用法總結》、《jQuery常見經典特效匯總》及《jquery選擇器用法總結》
希望本文所述對大家jQuery程序設計有所幫助。
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com