JavaScript

超轻量级php框架startmvc

JavaScript实现三级级联特效

更新时间:2020-06-14 03:48:01 作者:startmvc
本文实例为大家分享了js实现三级级联特效的具体代码,供大家参考,具体内容如下<!DOCTY

本文实例为大家分享了js实现三级级联特效的具体代码,供大家参考,具体内容如下


<!DOCTYPE html>
<html>
 <head>
 <meta charset="UTF-8">
 <title></title>
 </head>
 <body>

<!-- 实现效果:选择省会出现相应的县下拉框,同时市的下拉框改变-->
 <script type="application/javascript"> 

    //二维数组存放市的信息
 var shi =[["丽水市","杭州市"],["新乡","郑州"]]; 
   //三维数组存放县的信息 

   var xianes = [[["云和","景宁"],["桐庐","原阳"]],[["卫辉","下乡"],["中原","二七"]]];
 //所选的省值

    var proIndex = 0;
 function sgc(){
 //获得所选择的省的下拉框值

     var pro = document.getElementById("sheng");
 //获得市的下拉框 

    var cit = document.getElementById("shi");
 //将省的value与市的一维数组下标所对应 

    proIndex = pro.value-1;

    //清空市下拉框中原有的值
 cit.options.length = 1;
 //通过for循环往下拉框中添加市的信息
 for(var i = 0;i < shi[proIndex].length;i++){
 var op = document.createElement("option");
 var citName = document.createTextNode(shi[proIndex][i]);
 op.value = i;
 op.appendChild(citName);
 cit.appendChild(op); 
 } 
 }

   //市的值改变后改变县的值
 function sic(){
 var are = document.getElementById("xian");
 var cit = document.getElementById("shi");
 are.options.length = 1;

    //通过proIndex获得所选的省的值作为县的数组的一维数组下标,通过cit.value作为县数组的二维数组下标,遍历获得数组值
 for(var i = 0;i<xianes[proIndex][cit.value].length;i++){
 var op = document.createElement("option");
 var areName = document.createTextNode(xianes[proIndex][cit.value][i]);
 op.value = i;
 op.appendChild(areName);
 are.appendChild(op);
 }
 }
 </script>

  //onchange():控件的value值改变后调用方法
 <select id = "sheng" onchange = "sgc();">
 <option>----省份---</option>
 <option value = "1">浙江省</option>
 <option value = "2">河南省</option>
 </select>
 <select id = "shi" onchange="sic();">
 <option>---市区---</option>
 </select>
 <select id = "xian" >
 <option>---县区---</option>
 </select>
 </body>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

js 三级级联