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 相关文章推荐
Visual Studio中的jQuery智能提示设置方法
Mar 27 Javascript
JQuery基础语法小结
Feb 27 Javascript
jQuery实现伸展与合拢panel的方法
Apr 30 Javascript
JavaScript中Number.MIN_VALUE属性的使用示例
Jun 04 Javascript
理解Javascript的动态语言特性
Jun 17 Javascript
在Mac OS下使用Node.js的简单教程
Jun 24 Javascript
微信小程序(应用号)简单实例应用及实例详解
Sep 26 Javascript
深入理解vue2.0路由如何配置问题
Jul 18 Javascript
JavaScript动态绑定详解
Sep 14 Javascript
基于js Canvas实现二次贝塞尔曲线
Dec 25 Javascript
Vuex mutitons和actions初使用详解
Mar 04 Javascript
vue自动路由-单页面项目(非build时构建)
Apr 30 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
上传多个文件的PHP脚本
2006/11/26 PHP
PHP引用符&amp;的用法详细解析
2013/08/22 PHP
如何修改yii2.0自带的user表为其它的表
2017/08/01 PHP
PHP调用微博接口实现微博登录的方法示例
2018/09/22 PHP
ThinkPHP5.0框架使用build 自动生成模块操作示例
2019/04/11 PHP
laravel admin实现分类树/模型树的示例代码
2020/06/10 PHP
jquery Ajax 实现加载数据前动画效果的示例代码
2014/02/07 Javascript
常见浏览器多长时间会提示“脚本运行时间过长”总结
2014/04/29 Javascript
JS+CSS实现可以凹陷显示选中单元格的方法
2015/03/02 Javascript
js网页滚动条滚动事件实例分析
2015/05/05 Javascript
设计模式中的组合模式在JavaScript程序构建中的使用
2016/05/18 Javascript
基于js里调用函数时,函数名带括号和不带括号的区别
2016/07/28 Javascript
javascript字符串对象常用api函数小结(连接,替换,分割,转换等)
2016/09/20 Javascript
js判断文件格式及大小的简单实例(必看)
2016/10/11 Javascript
JavaScript中无法通过div.style.left获取值的解决方法
2017/02/19 Javascript
Vue精简版风格指南(推荐)
2018/01/30 Javascript
JS获取url参数,JS发送json格式的POST请求方法
2018/03/29 Javascript
JavaScript实现滑动门效果
2020/01/18 Javascript
Vue3项目打包后部署到服务器 请求不到后台接口解决方法
2020/02/06 Javascript
vue监听浏览器原生返回按钮,进行路由转跳操作
2020/09/09 Javascript
Python函数中定义参数的四种方式
2014/11/30 Python
Python多进程库multiprocessing中进程池Pool类的使用详解
2017/11/24 Python
深入浅析Python中list的复制及深拷贝与浅拷贝
2018/09/03 Python
PyQt5实现简单数据标注工具
2019/03/18 Python
python智联招聘爬虫并导入到excel代码实例
2019/09/09 Python
使用IDLE的Python shell窗口实例详解
2019/11/19 Python
将python文件打包exe独立运行程序方法详解
2020/02/12 Python
python网络编程之五子棋游戏
2020/05/14 Python
Python中使用aiohttp模拟服务器出现错误问题及解决方法
2020/10/31 Python
CSS3教程(10):CSS3 HSL声明设置颜色
2009/04/02 HTML / CSS
草莓网化妆品加拿大网站:Strawberrynet Canada
2016/09/20 全球购物
英国在线自行车商店:Evans Cycles
2016/09/26 全球购物
英国天然保健品网站:Simply Supplements
2017/03/22 全球购物
护士辞职信范文
2014/01/19 职场文书
先进事迹报告会感言
2014/01/24 职场文书
CSS实现两列布局的N种方法
2021/08/02 HTML / CSS