JS制作简单的三级联动


Posted in Javascript onMarch 18, 2015

用javascript制作的一个简单三级联动,非常简单实用

<!DOCTYPE html>

<html>

    <head>

        <meta charset="utf-8">

        <title></title>

    </head>

    <body>

        省:

        <select style="width: 100px;" id="pre" onchange="chg(this);">

            <option value="-1">请选择</option>

        </select>

        市:

        <select style="width: 100px;" id="city" onchange="chg2(this)" ;></select>

        区:

        <select style="width: 100px;" id="area"></select>

    </body>

    <script>

         //声明省

        var pres = ["北京", "上海", "山东"]; //直接声明Array

         //声明市

        var cities = [

            ["东城", "昌平", "海淀"],

            ["浦东", "高区"],

            ["济南", "青岛"]

        ];

        var areas = [

                [

                    ["东城1", "东城2", "东城3"],

                    ["昌平1", "昌平2", "昌平3"],

                    ["海淀1", "海淀2", "海淀3"]

                ],

                [

                    ["浦东1", "浦东2", "浦东3"],

                    ["高区1", "高区2", "高区3"]

                ],

                [

                    ["济南1", "济南2"],

                    ["青岛1", "青岛2"]

                ]

            ]

            //设置一个省的公共下标

        var pIndex = -1;

        var preEle = document.getElementById("pre");

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

        var areaEle = document.getElementById("area");

         //先设置省的值

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

            //声明option.<option value="pres[i]">Pres[i]</option>

            var op = new Option(pres[i], i);

            //添加

            preEle.options.add(op);

        }

        function chg(obj) {

            if (obj.value == -1) {

                cityEle.options.length = 0;

                areaEle.options.length = 0;

            }

            //获取值

            var val = obj.value;

            pIndex = obj.value;

            //获取ctiry

            var cs = cities[val];

            //获取默认区

            var as = areas[val][0];

            //先清空市

            cityEle.options.length = 0;

            areaEle.options.length = 0;

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

                var op = new Option(cs[i], i);

                cityEle.options.add(op);

            }

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

                var op = new Option(as[i], i);

                areaEle.options.add(op);

            }

        }

        function chg2(obj) {

            var val = obj.selectedIndex;

            var as = areas[pIndex][val];

            areaEle.options.length = 0;

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

                var op = new Option(as[i], i);

                areaEle.options.add(op);

            }

        }

    </script>

</html>

以上所述就是本文的全部内容了,希望大家能够喜欢。

Javascript 相关文章推荐
用JQuery调用Session的实现代码
Oct 29 Javascript
location.href用法总结(最主要的)
Dec 27 Javascript
Js冒泡事件详解及阻止示例
Mar 21 Javascript
JS在IE下缺少标识符的错误
Jul 23 Javascript
node.js中的http.createServer方法使用说明
Dec 14 Javascript
tuzhu_req.js 实现仿百度图片首页效果
Aug 11 Javascript
JS判断图片是否加载完成方法汇总(最新版)
May 13 Javascript
jQuery 常见小例汇总
Dec 14 Javascript
Bootstrap CSS组件之按钮下拉菜单
Dec 17 Javascript
JavaScript实现计数器基础方法
Oct 10 Javascript
vue中动态设置meta标签和title标签的方法
Jul 11 Javascript
vue-cli3.0 脚手架搭建项目的过程详解
Oct 19 Javascript
javascript实现ecshop搜索框键盘上下键切换控制
Mar 18 #Javascript
javascript版2048小游戏
Mar 18 #Javascript
JavaScript判断用户是否对表单进行了修改的方法
Mar 18 #Javascript
JavaScript阻止浏览器返回按钮的方法
Mar 18 #Javascript
JavaScript列表框listbox全选和反选的实现方法
Mar 18 #Javascript
JavaScript控制listbox列表框的项目上下移动的方法
Mar 18 #Javascript
JavaScript控制两个列表框listbox左右交换数据的方法
Mar 18 #Javascript
You might like
Symfony页面的基本创建实例详解
2015/01/26 PHP
PHP 返回13位时间戳的实现代码
2016/05/13 PHP
[IE&amp;FireFox兼容]JS对select操作
2007/01/07 Javascript
JS 控制非法字符的输入代码
2009/12/04 Javascript
基于jQuery的弹出警告对话框美化插件(警告,确认和提示)
2010/06/10 Javascript
javaScript array(数组)使用字符串作为数组下标的方法
2013/11/19 Javascript
Javascript 正则表达式实现为数字添加千位分隔符
2015/03/10 Javascript
Javascript 事件冒泡机制详细介绍
2016/10/10 Javascript
Vue.js使用v-show和v-if的注意事项
2016/12/13 Javascript
ionic+AngularJs实现获取验证码倒计时按钮
2017/04/22 Javascript
JavaScript的继承实现小结
2017/05/07 Javascript
vue element动态渲染、移除表单并添加验证的实现
2019/01/16 Javascript
微信小程序实现页面监听自定义组件的触发事件
2020/11/01 Javascript
python检查序列seq是否含有aset中项的方法
2015/06/30 Python
python实现爬取千万淘宝商品的方法
2015/06/30 Python
python中os模块详解
2016/10/14 Python
Django框架模板的使用方法示例
2019/05/25 Python
python下PyGame的下载与安装过程及遇到问题
2019/08/04 Python
Pytorch卷积层手动初始化权值的实例
2019/08/17 Python
Pandas+Matplotlib 箱式图异常值分析示例
2019/12/09 Python
详解从Django Allauth中进行登录改造小结
2019/12/18 Python
pycharm导入源码的具体步骤
2020/08/04 Python
python 如何停止一个死循环的线程
2020/11/24 Python
信号量和自旋锁的区别?如何选择使用?
2015/09/08 面试题
小学防溺水制度
2014/01/29 职场文书
物理力学求职信
2014/02/18 职场文书
开学寄语大全
2014/04/08 职场文书
老师对学生的评语
2014/04/18 职场文书
投标诚信承诺书
2014/05/26 职场文书
房屋买卖授权委托书
2014/09/27 职场文书
无房产证房屋转让协议书合同样本
2014/10/18 职场文书
体育教师个人总结
2015/02/09 职场文书
大学学习委员竞选稿
2015/11/20 职场文书
Java Shutdown Hook场景使用及源码分析
2021/06/15 Java/Android
基于HTML十秒做出淘宝页面
2021/10/24 HTML / CSS
Python借助with语句实现代码段只执行有限次
2022/03/23 Python