资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

js如何实现省市区三级联动菜单效果

小编给大家分享一下js如何实现省市区三级联动菜单效果,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

10年积累的成都网站建设、网站建设经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先做网站后付款的网站建设流程,更有雨花台免费网站建设让你可以放心的选择与我们合作。

效果如下:

js如何实现省市区三级联动菜单效果

代码如下:




 
 省市区三级联动


 
                          var proData = [],  cityData = [],  distData = [];  var proSelect = document.getElementById("province"),  citySelect = document.getElementById("city"),  districtSelect = document.getElementById("district");  var curPro = "",  curCity = "";  // 封装更新选择列表函数  function fillselect(select,list){  for (var i = select.length-1; i > 0 ; i--){  select.remove(i);  }  list.forEach(function(data){  var option = new Option(data.name, data.sheng);  option.dataset.di = data.di;  select.add(option);  })  }  // 将数据按省、市、地区分别存储  dataJson.forEach(function(data){  if (data.level === 1){  proData.push(data);  }  if (data.level === 2){  cityData.push(data);  }  if (data.level === 3){  distData.push(data);  }  })  fillselect(proSelect,proData);  // 监听一级省份选择列表change事件,更新二级城市列表  proSelect.addEventListener("change",function(event){  var val = event.target.value;  var list = [];  cityData.forEach(function(d){  if (d.sheng === val) {  list.push(d);  }  })  fillselect(citySelect,list);  })  // 监听二级城市选择列表change事件,更新三级区域列表  citySelect.addEventListener("change",function(event){  var val = event.target.value;  var curIndex = event.target.selectedIndex;  curCity = event.target[curIndex].dataset.di;  console.log(event.target,curCity);  var list = [];  distData.forEach(function(d){  if (d.di === curCity && d.sheng === val) {  list.push(d);  }  })  fillselect(districtSelect,list);  })  

JavaScript是什么

JS是JavaScript的简称,它是一种直译式的脚本语言,其解释器被称为JavaScript引擎,是浏览器的一部分,主要用于web的开发,可以给网站添加各种各样的动态效果,让网页更加美观。

以上是“js如何实现省市区三级联动菜单效果”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联行业资讯频道!


网站标题:js如何实现省市区三级联动菜单效果
路径分享:http://www.cdkjz.cn/article/jdhoip.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

大客户专线   成都:13518219792   座机:028-86922220