四级联动(js)

Js四级联动(下拉框选择地区) 数据与视图 如何根据数据渲染视图思路? 1:了解已知的数据接结构 2: 知到你要的数据是什么 3: 知道你的页面结构是什么? 4: 想办法拿到你想要的数据;方式有:数组对象的遍历;数组内置API 字符拼API 字符串变数组;数组变字符串,等基本操作。 5:看数据获取到的数据与你搭建的页面结构是否符合? 6:让你获取的数据与你搭建的页面结构相吻合。想办法:处理数据或者调整html结构 实现样式 7... 阅读详情
<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Document</title>
</head>

<body>
  <select name="" id=""></select>
  <select name="" id=""></select>
  <select name="" id=""></select>
  <select name="" id=""></select>
</body>
<script src="./area.js"></script>
<script>
  var seles = document.querySelectorAll("select");
  // 一
  var sheng = "";
  for (var key in place) {
    sheng += `<option value="${key}">${key}</option>`
  }
  seles[0].innerHTML = sheng;


  seles[0].onchange = function(){
    er()
  }


  // 二
  var plaCity = place["河南省"][0];
  // var shi = "";
  // for(var key1 in plaCity){
  //   shi += `<option value="${key1}">${key1}</option>`
  // }
  // seles[1].innerHTML = shi;
  er()
  function er() {
    plaCity = place[seles[0].value][0];
    var shi = "";
    for (var key1 in plaCity) {
      shi += `<option value="${key1}">${key1}</option>`
    }
    seles[1].innerHTML = shi;
    san();
  }

  seles[1].onchange = function(){
    san()
  }


  // 三
  // var qu = "";
  // plaCity["郑州市"].forEach(function(item){
  //   for(var key in item){
  //     qu += `<option value="${key}">${key}</option>`
  //   }
  // })
  // seles[2].innerHTML = qu;
  function san() {
    var qu = "";
    plaCity[seles[1].value].forEach(function (item) {
      for (var key in item) {
        qu += `<option value="${key}">${key}</option>`
      }
    })
    seles[2].innerHTML = qu;
    si();
  }
  seles[2].onchange = function(){
    si();
  }


  // 四
  var jie = plaCity["郑州市"][0]["中原区"]
  // console.log(jie);
  // jie = jie.split("、");
  // console.log(jie);
  // var jie1 = "";
  // jie.forEach(function (item) {
  //   jie1 += `<option value="${item}">${item}</option>`
  // })
  // seles[3].innerHTML = jie1;
  // si()
  function si() {
    var i = seles[2].selectedIndex;
    jie = plaCity[seles[1].value][i][seles[2].value];
    // console.log(jie);
    jie = jie.split("、");
    // console.log(jie);
    var jie1 = "";
    jie.forEach(function (item) {
      jie1 += `<option value="${item}">${item}</option>`
    })
    seles[3].innerHTML = jie1;
  }

</script>

</html>

area.js数据:

var area = {
	'河南省': [{
		'郑州市': [{
				'中原区': '林山寨街道办事处、建设路街道办事处、棉纺路街道办事处、秦岭路街道办事处、桐柏路街道办事处、三官庙街道办事处、绿东村街道办事处、汝河路街道办事处、航海西路街道办事处、中原西路街道办事处、西流                      湖街道办事处、须水街道办事处、石佛镇、沟赵乡'
			},
			{
				'二七区': '淮河路街道办事处、解放路街道办事处、铭功路街道办事处、一马路街道办事处、蜜蜂张街道办事处、五里堡街道办事处、大学路街道办事处、建中街街道办事处、福华街街道办事处、德化街街道办事处、嵩山路街                      道办事处、京广路街道办事处、长江路街道办事处、马寨镇、侯寨乡'
			},
			{
				'管城回族区': '北下街街道办事处、西大街街道办事处、南关街道办事处、城东路街道办事处、东大街街道办事处、二里岗街道办事处、陇海路街道办事处、紫荆山南路街道办事处、航海东路街道办事处、十八里河镇、南曹乡、                         圃田乡、经济开发区明湖街道办事处、经济开发区潮河街道办事处、京航街道办事处、商都路街道办事处'
			},
			{
				'金水区': '经八路街道办事处、花园路街道办事处、人民路街道办事处、杜岭街道办事处、大石桥街道办事处、南阳路街道办事处、南阳新村街道办事处、文化路街道办事处、丰产路街道办事处、东风路街道办事处、北林路街                      道办事处、未来路街道办事处、凤凰台街道办事处、龙子湖街道办事处、祭城路街道办事处、兴达路街道办事处、国基路街道办事处、杨金路街道办事处、丰庆路街道办事处、如意湖街道办事处、博学路街道办事处'
			},
			{
				'上街区': '济源路街道办事处、中心路街道办事处、新安路街道办事处、工业路街道办事处、矿山街道办事处、峡窝镇'
			},
			{
				'惠济区': '新城街道办事处、刘寨街道办事处、老鸦陈街道办事处、长兴路街道办事处、迎宾路街道办事处、大河路街道办事处、花园口镇、古荥镇'
			},
			{
				'中牟县': '青年路街道办事处、东风路街道办事处、广惠街街道办事处、韩寺镇、官渡镇、狼城岗镇、万滩镇、白沙镇、郑庵镇、张庄镇、黄店镇、大孟镇、九龙镇、刘集镇、八岗镇、雁鸣湖镇、姚家镇、三官庙镇、刁家乡'
			},
			{
				'巩义市': '新华路街道办事处、杜甫路街道办事处、永安路街道办事处、孝义街道办事处、紫荆路街道办事处、米河镇、新中镇、小关镇、竹林镇、大峪沟镇、河洛镇、站街镇、康店镇、北山口镇、西村镇、芝田镇、回郭镇、                      鲁庄镇、夹津口镇、涉村镇、豫联工业园区管委会'
			},
			{
				'荥阳市': '索河街道办事处、京城街道办事处、乔楼镇、豫龙镇、广武镇、王村镇、汜水镇、高山镇、刘河镇、崔庙镇、贾峪镇、城关乡、高村乡、金寨回族乡'
			},
			{
				'新密市': '青屏街街道办事处、新华路街道办事处、西大街街道办事处、城关镇、米村镇、牛店镇、平陌镇、超化镇、苟堂镇、大隗镇、刘寨镇、白寨镇、岳村镇、来集镇、曲梁镇、袁庄乡、矿区街道办事处、尖山风景区管理                      委员会、郑州曲梁产业集聚区管理委员会'
			},
			{
				'新郑市': '新建路街道办事处、新华路街道办事处、新烟街道办事处、新村镇、辛店镇、观音寺镇、梨河镇、和庄镇、薛店镇、孟庄镇、郭店镇、龙湖镇、城关乡、八千乡、龙王乡、新港办事处、郑港办事处、具茨山国家级森                       林公园管理委员会、中心城区新区建设管理委员会'
			},
			{
				'登封市': '嵩阳街道办事处、少林街道办事处、中岳街道办事处、大金店镇、颖阳镇、卢店镇、告成镇、阳城区镇、大冶镇、宣化镇、徐庄镇、东华镇、白坪乡、君召乡、石道乡、唐庄乡、送表矿区'
			},
			{
				'郑东新区': '郑东新区'
			},
			{
				'高新区': '长椿路腊梅路、长椿路药厂街、长椿路梧桐街'
			},
			{
				'经开区': '经开第三大街、航海东路、朝凤路、经北二路'
			},
			{
				'航空港区': '郑港十一路、富三街'
			}
		],
		'开封市': [{
				'龙亭区': '北书店街道办事处、午朝门街道办事处、大兴街道办事处、北道门街道办事处、北郊乡、柳园口乡、城西街道、梁苑街道、杏花营镇、西郊乡、水稻乡、杏花营农场、'
			},
			{
				'顺河回族区': '清平街道、铁塔街道、曹门街道、宋门街道、工业街道、苹果园街道、东郊乡、土柏岗乡'
			},
			{
				'鼓楼区': '相国寺街道、新华街道、卧龙街道、州桥街道、西司门街道、南苑街道、五一街道、仙人庄街道'
			},
			{
				'禹王台区': '三里堡街道、新门关街道、繁塔街道、官坊街道、菜市街道、南郊乡、汪屯乡'
			},
			{
				'祥符区': '城关镇、陈留镇、仇楼镇、八里湾镇、曲兴镇、朱仙镇、半坡店乡、罗王乡、刘店乡、袁坊乡、杜良乡、兴隆乡、西姜寨乡、万隆乡、范村乡'
			},
			{
				'杞县': '城关镇、五里河镇、付集镇、于镇镇、高阳镇、葛岗镇、阳固镇、邢口镇、裴村店乡、宗店乡、板木乡、竹林乡、官庄乡、湖岗乡、苏木乡、沙沃乡、平城乡、泥沟乡、柿元乡、西寨乡、城郊乡、工业园区'
			},
			{
				'通许县': '城关镇、竖岗镇、玉皇庙镇、四所楼镇、朱砂镇、长智镇、冯庄乡、孙营乡、大岗李乡、邸阁乡、练城乡、厉庄乡'
			},
			{
				'尉氏县': '城关镇、洧川镇、朱曲镇、蔡庄镇、永兴镇、张市镇、十八里镇、水坡镇、大营镇、邢庄乡、庄头乡、大马乡、岗李乡、门楼任乡、大桥乡、南曹乡、小陈乡'
			},
			{
				'兰考县': '城关镇、固阳镇、南彰镇、张君墓镇、红庙镇、城关乡、三义寨乡、坝头乡、爪营乡、谷营乡、小宋乡、孟寨乡、许河乡、葡萄架乡、闫楼乡、仪封乡、中原石油勘探三公司、仪封园艺场、造纸林场、柳林林场、西                      关农场、畜牧良种农场、固阳农科所'
			}
		],
		'洛阳市': [{
				'老城区': '西关街道办事处、西南隅街道办事处、西北隅街道办事处、东南隅街道办事处、东北隅街道办事处、南关街道办事处、洛浦街道办事处、邙山街道办事处'
			},
			{
				'西工区': '王城路街道办事处、金谷园街道办事处、西工街道办事处、邙岭路街道办事处、道北路街道办事处、唐宫路街道办事处、汉屯路街道办事处、凯旋东路街道办事处、洛北乡、红山乡'
			},
			{
				'瀍河回族区': '东关街道办事处、五股路街道办事处、北窑街道办事处、塔湾街道办事处、杨文街道办事处、华林新村街道办事处、瀍河回族区'
			},
			{
				'涧西区': '湖北路街道办事处、天津路街道办事处、长春路街道办事处、南昌路街道办事处、长安路街道办事处、重庆路街道办事处、郑州路街道办事处、武汉路街道办事处、徐家营街道办事处、珠江路街道办事处、周山路街                      道办事处、工农街道办事处、辛店街道办事处、瀛洲街道办事处、创业路街道办事处'
			},
			{
				'吉利区': '大庆路街道办事处、吉利乡'
			},
			{
				'洛龙区': '安乐街道办事处、开元路街道办事处、龙门石窟街道办事处、关林镇、龙门镇、安乐镇、白马寺镇、李楼镇、诸葛镇、李村镇、庞村镇、寇店镇、佃庄镇、古城乡、镇北路街道办事处'
			},
			{
				'孟津县': '城关镇、会盟镇、平乐镇、送庄镇、白鹤镇、朝阳镇、小浪底镇、麻屯镇、横水镇、常袋镇'
			},
			{
				'新安县': '城关镇、石寺镇、五头镇、磁涧镇、铁门镇、南李村镇、北冶镇、仓头镇、正村镇、石井镇、曹村乡、洛阳市洛新产业集聚区管理委员会'
			},
			{
				'栾川县': '城关镇、赤土店镇、合峪镇、潭头镇、三川镇、冷水镇、陶湾镇、石庙镇、庙子镇、狮子庙镇、白土镇、叫河镇、栾川乡、秋扒乡'
			},
			{
				'嵩县': '城关镇、田湖镇、旧县镇、车村镇、闫庄镇、德亭镇、大章镇、白河镇、纸房镇、大坪乡、库区乡、何村乡、饭坡乡、九店乡、黄庄乡、木植街乡、陶村林场、五马寺林场、王莽寨林场'
			},
			{
				'汝阳县': '城关镇、上店镇、付店镇、小店镇、三屯镇、刘店镇、内埠镇、柏树乡、十八盘乡、靳村乡、王坪乡、陶营乡、蔡店乡、大安工业园区'
			},
			{
				'宜阳县': '城关镇、丰李镇、柳泉镇、韩城镇、白杨镇、香鹿山镇、锦屏镇、三乡镇、张坞镇、莲庄镇、盐镇乡、高村乡、花果山乡、上观乡、赵保乡、董王庄乡、樊村乡'
			},
			{
				'洛宁县': '城关镇、王范回族镇、上戈镇、下峪镇、河底镇、兴华镇、东宋镇、马店镇、故县镇、赵村镇、城郊乡、小界乡、长水乡、罗岭乡、底张乡、山底乡、陈吴乡、涧口乡'
			},
			{
				'伊川县': '城关镇、鸣皋镇、水寨镇、彭婆镇、白沙镇、江左镇、高山镇、吕店镇、半坡镇、鸦岭乡、平等乡、酒后乡、葛寨乡、白元乡'
			},
			{
				'偃师市': '商城街道办事处、工业区街道办事处、首阳山街道办事处、翟镇、岳滩镇、顾县镇、缑氏镇、府店镇、高龙镇、山化镇、邙岭乡、大口乡'
			},
			{
				'伊滨区': '诸葛镇、李村镇、庞村镇、佃庄镇、寇店镇'
			},
			{
				'洛阳新区': '牡丹大道、金城寨街、王城大道'
			},
			{
				'高新区': '河洛路、孙辛路'
			}
		],
		'平顶山市': [{
				'新华区': '曙光街街道办事处、光明路街道办事处、中兴路街道办事处、矿工路街道办事处、西市场街道办事处、新新街街道办事处、青石山街道办事处、湛河北路街道办事处、湖滨路街道办事处、西高皇街道办事处、焦店                       镇、香山管委会、滨湖管委会、应滨管委会'
			},
			{
				'卫东区': '东安路街道办事处、优越路街道办事处、五一路街道办事处、建设路街道办事处、东环路街道办事处、东工人镇街道办事处、光华路街道办事处、鸿鹰街道办事处、皇台街道办事处、北环路街道办事处、东高皇街道办事处、蒲城街道办事处'
			},
			{
				'石龙区': '高庄街道办事处、龙兴街道办事处、人民路街道办事处、龙河街道办事处'
			},
			{
				'湛河区': '马庄街道、南环路街道、姚孟街道、九里山街道、轻工路街道、高阳路街道、北渡镇、曹镇乡'
			},
			{
				'宝丰县': '铁路街道办事处、城关镇、周庄镇、闹店镇、石桥镇、商酒务镇、大营镇、张八桥镇、杨庄镇、肖旗乡、赵庄乡、前营乡、李庄乡'
			},
			{
				'叶县': '昆阳镇、任店镇、保安镇、仙台镇、遵化店镇、叶邑镇、廉村镇、常村镇、辛店镇、城关乡、夏李乡、马庄回族乡、田庄乡、龚店乡、龙泉乡、水寨乡、洪庄杨乡、邓李乡'
			},
			{
				'鲁山县': '露峰街道办事处、琴台街道办事处、鲁阳街道办事处、汇源街道办事处、下汤镇、梁洼镇、张官营镇、张良镇、尧山镇、赵村乡、四棵树乡、团城乡、熊背乡、让河乡、瓦屋乡、观音寺乡、昭平台库区乡、背孜乡                        、仓头乡、董周乡、张店乡、辛集乡、滚子营乡、马楼乡'
			},
			{
				'郏县': '龙山街道办事处、东城街道办事处、冢头镇、安良镇、堂街镇、薛店镇、长桥镇、茨芭镇、黄道镇、李口镇、王集乡、姚庄、回族乡、白庙乡、广阔天地乡、渣元乡'
			},
			{
				'舞钢市': '垭口街道办事处、寺坡街道办事处、朱兰街道办事处、院岭街道办事处、矿建街道办事处、尚店镇、八台镇、尹集镇、枣林镇、庙街乡、铁山乡、武功乡、杨庄乡'
			},
			{
				'汝州市': '煤山街道办事处、风穴路街道办事处、钟楼街道办事处、洗耳河街道办事处、汝南街道办事处、寄料镇、温泉镇、临汝镇、小屯镇、杨楼镇、蟒川镇、庙下镇、米庙镇、陵头镇、王寨乡、纸坊乡、骑岭乡、大峪乡、夏店乡、焦村乡'
			}
		],
		'安阳市': [{
				'文峰区': '东大街街道办事处、头二三街道办事处、甜水井街道办事处、东关街道办事处、南关街道办事处、西大街街道办事处、北大街街道办事处、西关街道办事处、紫薇大道街道办事处、光华路街道办事处、永明路街道办                      事处、中华路街道办事处、宝莲寺镇、高庄乡、步行街综合治理办公室、北大
JavaScript与XML实现省市区热点四级联动开发详解 Ajax 技术的核心在于异步通信,即在不刷新整个页面的前提下,通过浏览器与服务器进行局部数据交互。这一机制极大地提升了 Web 应用的响应速度和交互体验。XML 的层级结构天然适合表示地址数据。以下是省市区四级联动结构的 XML 示例:<address><province id="1" name="北京市"><city id="2" name="东城区"><district id="3" name="朝阳街道"/><district id="4" name="建国门外街道"/> 阅读详情

相关推荐

四层级联动JavaScript代码

JS四级联动代码

javascript 省市区街——四级联动

javascript 原生实现 省市区街——四级联动

四级联动js文件,前端请看我都博客四级联动

四级联动js文件,前端请看我都博客四级联动.四级联动js文件,前端请看我都博客四级联动

JS实现地区四级联动

纯JS实现地区四级联动,不需要本地数据库

js四级联动完整代码

一、集中到Script里,方便管理 二、防止一些编辑器报告讨厌的XX标准不支持此属性的警告 三、让网页通过标准验证 */ window.onload = function(){ form = document.forms[0]; form.certType.setAttribute("subElement", "certName"); //form.certType.setAttribute("selectedValue", 739); form.certType.setAttribute("defaultText", "不限1级"); form.certType.setAttribute("defaultValue", ""); form.certName.setAttribute("selectedValue", 746); form.certName.setAttribute("defaultText", "不限2级"); form.certName.setAttribute("defaultValue", ""); /* 调用 优化后的好处: 一、只要一个方法,调用方便,重用性高 二、优化了算法,执行速度快

世界国家,省市区,四级联动前台JS代码实现以及json数据

包含世界主要30多个国家的省市区数据。绝对好用。正在使用中。

人工智能在高中教育中的应用现状剖析与挑战应对

人工智能在高中教育中的应用现状剖析与挑战应对

燕鹏 1338

港口集装箱码头运营FlexSim仿真

列队4中的集装箱会根据不同类型的集装箱会放置在不同的堆场,因此根据前面对集装箱设置的标签Type的数值不同,设置不同的发送端口。集装箱到达列队3后,会有70%的集装箱到达堆场,30%的集装箱运出港口,因此在Queue列队3的Flow界面设置按照百分比发送端口,其中70%发送到端口1,即发送到列队4等待进入堆场,30%发送到端口2,即发送至出闸口。通过上述对比表格可以看出,当集卡数量在10的时候,岸桥和场桥的设备利用率达到了最高,当集卡数量为12的时候场桥1和场桥3的利用率有所下降,因此综合考虑。

m0_72514516的博客 1331

【机器人开发】四足机械狗(并联结构)URDF建模与Simscape仿真全流程解析

本文详细解析了四足机械狗(并联结构)从URDF建模到Simscape仿真的全流程开发。内容涵盖SolidWorks建模要点、URDF文件导出与优化、Matlab/Simscape环境搭建,以及并联机构特有的运动控制和步态规划实现,为机器人开发者提供了一套完整的解决方案。

weixin_30642561的博客 529

ABP框架实战:从零搭建多租户应用(含完整代码示例)

本文详细介绍了如何使用ABP框架从零构建多租户SaaS应用,涵盖多租户架构设计、数据隔离实现、租户管理及性能优化等核心内容。通过完整的代码示例,帮助开发者快速掌握企业级数据隔离系统的开发技巧,提升SaaS应用开发效率。

weixin_29247219的博客 263

无线网卡选购指南:哪些型号支持Kali Linux的监听模式?附免驱动网卡推荐

本文详细解析了如何在Kali Linux下选购支持监听模式的无线网卡。核心在于选择兼容的芯片组,如Atheros AR9271和Ralink RT3070等经典型号,并提供了免驱动网卡推荐与实战配置指南,帮助安全研究人员和爱好者快速搭建无线测试环境。

wind6的博客 1555

中小型微服务系统 硬件设备如何部署,QPS大概多少

作为一名合格的开发工程师,不仅仅要在前期开发阶段对业务和技术有深入了解,知道选用哪种合适的技术,业务如何拆分,还要思考后期线上环境,资源,延迟,性能等如何优化维护以及分布式系统一些线上生产的一些问题。 本篇主要针对之前了解的情况对硬件设备资源做一个简单的介绍: 首先分布式系统线上实践问题,我们应该对公司的流量,各个服务,网管,注册中心应该如何部署,部署多少台机器才合适,每台机器的配置如何,每天整体流量有多少,高峰期的请求量有多少,你的整体系统是否扛得住(注:很多公司现在直接使用K8S docker 实现

wangxuelei036的博客 1万+

从交换机安全配置,看常见局域网攻击

前言 构建零信任网络,自然离不开网络准入(NAC),这就涉及到交换机的一些安全测试,于是有了此文《从交换机安全配置看常见局域网攻击》。 交换机安全配置 如本文标题所说从交换机安全配置看常见的局域网攻击,那么下面提到的各种攻击方式,自然是建立在交换机安全配置之上来说的。我们通过h3c官方提供的《H3C 交换机安全加固手册》和《安全配置指导》,从这两份手册可以看出交换机支持的安全配置非常多,基本已经覆盖了各种我们熟知局域网攻击。下面就挑几个典型的攻击方式进行演示。 arp欺骗 【一>所有资源获取&lt

kali_Ma的博客 1万+

超详细neo4j安装教程

一、neo4j简介 最近开始学习知识图谱,所以首先想先学习一下neo4j的使用。 Neo4j是一个高性能的,NOSQL图形数据库,它将结构化数据存储在网络上而不是表中。由于知识图谱中存在大量的关系型信息(实体—关系—实体), 使用结构化数据库进行存储将产生大量的冗余存储信息, 因此将图数据库作为知识图谱的存储容器成为流行的选择。当前较为常用的图数据库主要有 Neo4j 等。 二、neo4j的安装 功能快捷键 撤销:Ctrl/Command + Z 重做:Ctrl/Command + Y 加粗:Ctrl/Co

qq_38335648的博客 9万+

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

上一篇: 三级联动(地址:省市区)
下一篇: 三级联动(原生js)
昨夜太平长安888
博客等级 码龄9年 1万+粉丝 176原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值