请老师检查

来源:7-8 编程练习

小弟初出茅庐

2019-12-18 18:43:06

<!DOCTYPE html>

<html>

<head>

    <meta charset="UTF-8">

<title>Document</title>

    <script type="text/javascript" src="index.js"></script>

</head>

<body onload="address();linkage()">

<form>

省份:

<select id="province" name="province" onchange="linkage()"></select>

市/区:

<select id="city" name="city"></select>

</form>

</body>

</html>

function address(){

    var province=document.getElementById("province");

    var city=document.getElementById("city");

    var proArr=["北京市","天津市","河北省","河南省"];

    selectAdd(province,proArr,proArr);

}

function selectAdd(obj,name,value){

for(var i in name){

    obj.options.add(new Option(name[i],value[i]));

}

}

function linkage(){

    var pro=province.value;

var bjArr=["朝阳区","西城区"];

var tjArr=["西青区","武清区"];

var hbArr=["石家庄","邯郸市"];

var hnArr=["郑州市","开封市"];

switch(pro){

    case "北京市":

    city.options.length=0;

    selectAdd(city,bjArr,bjArr);

    break;

    case "天津市":

    city.options.length=0;

    selectAdd(city,tjArr,tjArr);

    break;

    case "河北省":

    city.options.length=0;

    selectAdd(city,hbArr,hbArr);

    break;

    case "河南省":

    city.options.length=0;

    selectAdd(city,hnArr,hnArr);

    break;

    

}

}


写回答

2回答

好帮手慕小班

2020-01-16

同学你好,selectAdd(province,proArr,proArr);其实就是调用selectAdd方法,根据传入的参数,创建具体Option条目,如下所示:

http://img.mukewang.com/climg/5e1fdb230967770f06260420.jpg

在js的add方法是添加下拉框的值,为传入的obj对象添加Option条目,在方法中通过new Option(name,value)来创建一个具体的条目。遍历传入的proArr数组,添加每个数组元素为具体Option条目。

    new Option()表示一条具体的条目,里面的参数一个表示在页面中显示的具体内容,一个表示的是它的值,比如:以这个标签为例<option value="123">abc</option>,第一个参数是要显示的内容,也就是这里的abc,第二个标签是value的值。

如果我的回答解决了你的疑惑,请采纳!祝学习愉快!

0

好帮手慕小班

2019-12-18

同学你好,程序运行效果正确,完成的不错。

如果我的回答解决了你的疑惑,请采纳!祝学习愉快!

0
hnine
h 老师,我想问一下 selectAdd(province,proArr,proArr); 和 selectAdd(city,bjArr,bjArr); 我这里读不懂,可以讲解一下吗
h020-01-15
共1条回复

0 学习 · 9666 问题

查看课程

相似问题