麻烦看看这样写可以吗?

来源:7-8 编程练习

weixin_慕勒8187086

2019-09-08 03:49:45

<!DOCTYPE html>
<html>
<head>
     <meta charset="UTF-8">
    <title></title>
    <script type="text/javascript" src="1.js"></script>
</head>
<body onload="address()">
    <form id="address" method="get" action="">
        <label id="">Province: </label>
        <select id="province" onchange="getCity()"></select>
        <label>City/Commuity: </label>
        <select id="city"></select>
        
    </form>
</body>
</html>
// var arrProvince = ["北京市", "天津市", "河北省","河南省"];
// var arrCity = ["朝阳区", "西城区", "石家庄", "邯郸市", "西青区", "武清区", "郑州市", "开封市"];

var mapProvince = [{key:"北京市", val: "BJ"}, 
				   {key:"天津市", val:"TJ"}, 
				   {key:"河北省", val:"HB"},
				   {key:"河南省", val:"HN"}];
var mapHN = [{key:"郑州市", val:"zzs"}, {key:"开封市", val:"kfs"}];
var mapBJ = [{key:"朝阳区", val:"cyq"}, {key:"西城区",val:"xcq"}]; 
var mapHB = [{key:"石家庄", val:"sjz"}, {key:"邯郸市", val:"hds"}];
var mapTJ = [{key:"西青区", val:"xqq"}, {key:"武清区", val:"wqq"}];

function address() {
	// body...
	var province = document.getElementById("province");
	var city = document.getElementById("city");
	addSelect(province, mapProvince);
	addSelect(city, mapBJ);
}

function addSelect(obj, map) {
	// body...
	for(var x of map){
		obj.options.add(new Option(x.key, x.val));
	}
}

function getCity(){
	var province = document.getElementById("province");
	var city = document.getElementById("city");
	switch (province.value) {
		case "BJ":
			// statements_1
			clearCitySelect();
			addSelect(city, mapBJ);
			break;
		case "TJ":
			// statements_1
			clearCitySelect();
			addSelect(city, mapTJ);
			break;
		case "HB":
			// statements_1
			clearCitySelect();
			addSelect(city, mapHB);
			break;
		case "HN":
			// statements_1
			clearCitySelect();
			addSelect(city, mapHN);
			break;
	}
}

function clearCitySelect(obj) {
	// body...
	var city = document.getElementById("city");
	city.options.length = 0;
}


写回答

1回答

好帮手慕柯南

2019-09-08

同学这么写可以的,完成的不错,加油,祝学习愉快~

0

0 学习 · 9666 问题

查看课程