提交后下拉列表不显示

来源:7-8 编程练习

qq_慕虎5549273

2020-10-10 11:32:30

<!DOCTYPE html>
<html>
<head>
   <meta charset="UTF-8">
<title>Document</title>
   <script type="text/javascript" src="index.js"></script>
</head>
<body onload="address()">
<form>
省份:
<!--  请在此补充代码 -->
<select id="shengfen" onchange="linkage()"></select>
市/区:
<!--  请在此补充代码 -->
<select id="shiqu"></select>
</form>
</body>
</html>


----------------------------------------------------------------------------------------------------------------

index.js

function address(){

    /*请在此补充代码*/ 

    var sf=document.getElementById("shengfen");

    var sq=document.getElementById("shiqu");

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

    selectAdd(sf,sfArray,sfArray);

}

function selectAdd(obj,name,value){

/*请在此补充代码*/  

for(var i=0;i<value.length;i++){

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

}

}

function linkage(){

/*请在此补充代码*/

var sf=document.getElementById("shengfen");

    var sq=document.getElementById("shiqu");

    var sfName=sf.value;

    var sqArray;

    switch(sfName){

        case "北京市":

            sqArray=["朝阳区","西城区"];

            break;


        case "天津市":

            sqArray=["西青区","武清区"];

            break;

        

        case "河北省":

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

            break;

        

        

        case "河南省":

            sqArray=["郑州市","开封市"];

            break;

    }

    sq.options.length=0;

    selectAdd(sq,sqArray,sqArray);

    

}



就是我点那个提交,下拉列表里什么都没有,我用sublime然后浏览器打开下拉列表会显示,我又换了其他同学的代码提交了一次,和我提交的那个效果一样,下拉列表没东西呀


写回答

1回答

好帮手慕阿园

2020-10-10

同学你好,在一级菜单为北京市时,显示不出来内容,是因为省份下拉框在onchange事件选项改变时才会调用linkage方法。同学可以在address方法最后调用linkage方法,这样就可以显示北京下的区域了。

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

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


0

0 学习 · 16556 问题

查看课程