js 省市级联

<!doctype html>
<html lang="en">
 <head>
  <meta charset="UTF-8">
  <meta name="Generator" content="EditPlus®">
  <meta name="Author" content="">
  <meta name="Keywords" content="">
  <meta name="Description" content="">
  <title>Document</title>
 </head>
 <body οnlοad="tm_init_pronince()">
	<select id="province" οnchange="tm_city_change(this)"></select>
	<select id="city" οnchange="tm_areas_change(this)"></select>
	<select id="area"></select>
	<script type="text/javascript">	
		function tm_init_pronince(){
			var selectDom = document.getElementById("province");
			var arr = [{"id":1001,"name":"湖南省"},{"id":1002,"name":"湖北省"}];
			/*var html = "<option value=''>--请选择--</option>";
			for(var i=0;i<arr.length;i++){
				html += "<option value='"+arr[i].id+"'>"+arr[i].name+"</option>";
			}	
			selectDom.innerHTML = html; */
			var optionEmpty = document.createElement("option");
			optionEmpty.value = "";
			optionEmpty.text = "请选择";
			selectDom.appendChild(optionEmpty);
			for(var i=0;i<arr.length;i++){
				var option = document.createElement("option");
				option.value = arr[i].id;
				option.text = arr[i].name;
				selectDom.appendChild(option);
			}
		};
			
		//城市数据
		var cityDatas = {
			"1001":"100101#长沙,100102#郴州,100103#株洲",
			"1002":"100201#武汉,100202#太远,10023#十堰"
		};

		var areasDatas = {
			"100101" :"10010101#雨花区,10010102#芙蓉区",
			"100102" :"10010201#桂阳县,10010202#永兴区",
			"100201" :"10020101#汉口,10020102#汉阳,10020103#武昌"
		};


		//1:了解数据层级接口
		//2:javascript元素创建,定义和追加
		function tm_city_change(obj){
			var value = obj.value;
			var datas = cityDatas[value];
			var cityDom = document.getElementById("city");
			cityDom.innerHTML = "";
			var optionEmpty = document.createElement("option");
			optionEmpty.value = "";
			optionEmpty.text = "请选择";
			cityDom.appendChild(optionEmpty);
			if(datas){
				var citys = datas.split(",");
				for(var i=0;i<citys.length;i++){
					var option = document.createElement("option");
					var v = citys[i].split("#");
					option.value = v[0];
					option.text = v[1];
					cityDom.appendChild(option);
				}
			}
		};


		function tm_areas_change(obj){
			var value = obj.value;
			var datas = areasDatas[value];
			var areaDom = document.getElementById("area");
			areaDom.innerHTML = "";
			var optionEmpty = document.createElement("option");
			optionEmpty.value = "";
			optionEmpty.text = "请选择";
			areaDom.appendChild(optionEmpty);
			if(datas){
				var areas =areasDatas[value].split(",");
				for(var i=0;i<areas.length;i++){
					var option = document.createElement("option");
					var v = areas[i].split("#");
					option.value = v[0];
					option.text = v[1];
					areaDom.appendChild(option);
				}
			}
		};

	</script>
 </body>
</html>

以下是一个简单的JavaScript省市级联代码的示例: ```javascript // 省份数据 var provinces = [ { name: "北京市", cities: ["北京市"] }, { name: "上海市", cities: ["上海市"] }, { name: "广东省", cities: ["广州市", "深圳市", "珠海市"] }, // 其他省份数据... ]; // 城市数据 var cities = { "北京市": ["东城区", "西城区", "朝阳区", "海淀区"], "上海市": ["黄浦区", "徐汇区", "静安区", "普陀区"], "广州市": ["天河区", "越秀区", "海珠区", "荔湾区"], "深圳市": ["福田区", "罗湖区", "南山区", "宝安区"], "珠海市": ["香洲区", "斗门区", "金湾区"], // 其他城市数据... }; // 省份下拉框 var provinceSelect = document.getElementById("province"); // 城市下拉框 var citySelect = document.getElementById("city"); // 初始化省份下拉框 for (var i = 0; i < provinces.length; i++) { var option = document.createElement("option"); option.text = provinces[i].name; provinceSelect.add(option); } // 省份下拉框改变事件 provinceSelect.addEventListener("change", function() { // 清空城市下拉框 citySelect.innerHTML = ""; // 获取选中的省份 var selectedProvince = provinceSelect.value; // 根据选中的省份获取对应的城市数据 var selectedCities = cities[selectedProvince]; // 初始化城市下拉框 for (var i = 0; i < selectedCities.length; i++) { var option = document.createElement("option"); option.text = selectedCities[i]; citySelect.add(option); } }); ``` 这段代码实现了一个简单的省市级联功能。当选择省份时,城市下拉框会根据选中的省份动态更新显示对应的城市列表。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值