天天看點

原生js實作省市區的三級關聯原生js實作省市區的三級關聯

原生js實作省市區的三級關聯

由于項目需求需要省市區三級關聯,然後打開百度一身搜尋,發現都不盡人意

  • 最基本的三級關聯
  • 可以傳入預設值,并且傳入之後,還可以選擇其他項

就這倆需求,找了一天也沒找到,主要是第二個需求有點蛋疼,無奈自己寫了一個

源碼敬上:

GitHub:https://github.com/Zjch/selectcity.git

第一個需求,我就不詳細說了,主要說一下,第二個

大緻邏輯

  • 把你要傳的省市區放到一個數組裡面
var arr =['xx省','xx市','xx區']
           
  • 周遊你的城市(我把所有的省市區都放在了一個js裡面,json格式)
  • 先循環周遊省,然後将省放到你的第一個select裡面
  • 這時候你就要把你剛才的預設省拿過來判斷了
if(arr[] == provinc[i].name){
    //記錄下标
    //給你的provinc[i]這一項加上select="select"
}
           

到此,基本上省的預設值就可以加上去了

市和區的方法和省的方法是一模一樣的,無非就是for循環嵌套

解決有些插件,加入預設值之後,不可靈活選擇,隻能從省到區一級一級選
解決有些插件,省 市 區 對應錯位問題

附上我的源碼:

GitHub:https://github.com/Zjch/selectcity.git

代碼有備援且爛,希望各位道友不要嫌棄,若有幫助,請點贊

繼續閱讀