91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

jQuery-Citys省市區三級菜單聯動插件使用說明

發布時間:2021-08-10 14:17:52 來源:億速云 閱讀:196 作者:chen 欄目:web開發

本篇內容介紹了“jQuery-Citys省市區三級菜單聯動插件使用說明”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

前言

這里分享一個博主寫的省市區三級菜單聯動插件 — jQuery-Citys,此插件中所有省市區數據均為國家行政區劃代碼,保證數據真實可靠,插件可以根據默認地區代碼或地區名稱進行值的初始化操作。

線上演示地址

github地址

演示截圖(查看演示效果請點擊上方鏈接):

jQuery-Citys省市區三級菜單聯動插件使用說明

插件邏輯

這個插件的邏輯主要是根據區劃代碼來進行省市區的篩選以及分類,因為區劃代碼的特殊排序博主在里面使用了一些正則來劃分不同的省份以及地區,然后通過對三級菜單綁定不同的事件來響應省市區變化的聯動效果。

源碼解析

這里只展示部分相關源碼,更多源碼可以訪問博主的github地址進行下載查看。

首先是定義各項參數:

var _options = $.extend({
  url : 'js/jquery-citys.json',     //省市區json數據地址
  patternPro : /\d{2}0000/,       //初始化正則匹配省數據
  patternCity : /1101\d{2}/,      //初始化正則匹配市數據
  type : 'code',            //下拉框值的類型,code行政區劃代碼,name地名
  code: 0,               //地區編碼
  province : '',            //省份(省級),可以為地區編碼或者名稱
  city : '',              //城市(地級),可以為地區編碼或者名稱
  area : '',              //地區(縣區級),可以為地區編碼或者名
  selState : 0,             //聯動級別判斷值,二級聯動狀態值為0,三級為1
  selProvince : "province",       //省份、直轄市列表框name
  selCity : "city",           //城市、區列表框name
  selArea : "area",           //區、縣列表框name
}, options);
var proHtml = '',             //省份html數據
  cityHtml = '',            //城市html數據
  areaHtml = '',            //地區html數據
  _this = $(this),           //指向調用插件對象
  citys = '',              //省市區json數據
  patternPro = _options.patternPro,   //初始化正則匹配省數據
  patternCity = _options.patternCity,  //初始化正則匹配市數據
  type = _options.type,         //下拉框值的類型,code行政區劃代碼,name地名
  code = _options.code,         //地區編碼
  province = _options.province,     //省份(省級),可以為地區編碼或者名稱
  city = _options.city,         //城市(地級),可以為地區編碼或者名稱
  area = _options.area,         //地區(縣區級),可以為地區編碼或者名
  selState = _options.selState,     //聯動級別判斷值,二級聯動狀態值為0,三級為1
  $selProvince = _this.find('select[name="'+ _options.selProvince +'"]'), //省份、直轄市列表框name
  $selCity = _this.find('select[name="'+ _options.selCity +'"]'),     //城市、區列表框name
  $selArea = _this.find('select[name="'+ _options.selArea +'"]');      //區、縣列表框name

獲取省市區json數據:

$.getJSON(_options.url,function(data){
 citys = data;
 //執行初始化命令
 init();
})

初始化命令:

var init = function(){
 //初始化默認數據         
 proHtml = "<option> - 請選擇 - </option>";
 cityHtml = "<option> - 請選擇 - </option>";         
 for(var i in citys){
  if(patternPro.test(i)){ //添加一級列表數據
   proHtml += "<option value=""+(type=="code"?i:citys[i])+"" data-code=""+ i +"">"+ citys[i] +"</option>";
  }
 }
 //渲染省份一級列表
 $selProvince.html(proHtml);
 //渲染城市二級列表
 $selCity.html(cityHtml);
 //默認隱藏區三級列表
 $selArea.hide();
 //填寫地區編碼時,利用編碼定位
 if(type == 'code' && code){
  var c = code - code%1e4;
  province = c;
  c = code - (code%1e4 ? code%1e2 : code);
  city = c;
  c = code%1e2 ? code : 0;
  area = c;
 }
 //添加默認初始值
 $selProvince.find('option').each(function(){
  if(type == 'code' && province != ''){
   if(province == $(this).data('code')){
    $(this).attr('selected',true);
    changeProvince($(this).data('code'));
   }
  }else if(type == 'name' && province != ''){
   if(province == $(this).val()){
    $(this).attr('selected',true);
    changeProvince($(this).data('code'));
   }
  }
 })
 $selCity.find('option').each(function(){
  if(type == 'code' && city != ''){
   if(city == $(this).data('code')){
    $(this).attr('selected',true);
    changeCity($(this).data('code'));
   }
  }else if(type == 'name' && city != ''){
   if(city == $(this).val()){
    $(this).attr('selected',true);
    changeCity($(this).data('code'));
   }
  }
 })
 $selArea.find('option').each(function(){ 
  //三級聯動時,匹配對應地區
  if(selState == 1){ 
   if(type == 'code' && area != ''){
    if(area == $(this).data('code')){
     $(this).attr('selected',true);
    }
   }else if(type == 'name' && area != ''){
    if(area == $(this).val()){
     $(this).attr('selected',true);
    }
   }
  }
 })
}

“jQuery-Citys省市區三級菜單聯動插件使用說明”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

正定县| 唐河县| 岳普湖县| 垦利县| 余干县| 西充县| 营山县| 淮阳县| 古交市| 隆昌县| 滨海县| 台东县| 六安市| 比如县| 合肥市| 合山市| 耿马| 肇州县| 虞城县| 绥阳县| 裕民县| 普陀区| 开原市| 蓬溪县| 吉首市| 偃师市| 荣昌县| 连州市| 三门峡市| 余江县| 枣庄市| 北安市| 木兰县| 临洮县| 湛江市| 家居| 东兰县| 敖汉旗| 庄浪县| 平陆县| 辰溪县|