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 相关文章推荐
JavaScript delete操作符应用实例
Jan 13 Javascript
JS对img进行操作(换图片/切图/轮换/停止)
Apr 17 Javascript
js获取电脑分辨率的思路及操作
Nov 22 Javascript
js实现超酷的照片墙展示效果图附源码下载
Oct 08 Javascript
Javascript中匿名函数的调用与写法实例详解(多种)
Jan 26 Javascript
浅析创建javascript对象的方法
May 13 Javascript
深入理解JS DOM事件机制
Aug 06 Javascript
jqGrid翻页时数据选中丢失问题的解决办法
Feb 13 Javascript
jquery PrintArea 实现票据的套打功能(代码)
Mar 17 Javascript
基于HTML5+JS实现本地图片裁剪并上传功能
Mar 24 Javascript
node app 打包工具pkg的具体使用
Jan 17 Javascript
JS判断数组里是否有重复元素的方法小结
May 21 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
实例(Smarty+FCKeditor新闻系统)
2007/01/02 PHP
php通过文件头检测文件类型通用代码类(zip,rar等)
2010/10/19 PHP
laravel 字段格式化 modle 字段类型转换方法
2019/09/30 PHP
PHP-FPM 设置多pool及配置文件重写操作示例
2019/10/02 PHP
php如何获取Http请求
2020/04/30 PHP
Javascript实例教程(19) 使用HoTMetal(6)
2006/12/23 Javascript
js实现的网页颜色代码表全集
2007/07/17 Javascript
return false;和e.preventDefault();的区别
2010/07/11 Javascript
jQuery $.get 的妙用 访问本地文本文件
2012/07/12 Javascript
禁止空格提交表单的js代码
2013/11/17 Javascript
JQuery插件iScroll实现下拉刷新,滚动翻页特效
2014/06/22 Javascript
jQuery事件绑定与解除绑定实现方法
2015/04/15 Javascript
JQuery radio(单选按钮)操作方法汇总
2015/04/15 Javascript
JS时间特效最常用的三款
2015/08/19 Javascript
原生JS和jQuery操作DOM对比总结
2017/01/19 Javascript
JS+DIV实现的卷帘效果示例
2017/03/22 Javascript
js中的闭包学习心得
2018/02/06 Javascript
Vue监听事件实现计数点击依次增加的方法
2018/09/26 Javascript
浅谈Vue中render中的h箭头函数
2019/11/07 Javascript
javascript canvas实现简易时钟例子
2020/09/05 Javascript
[06:42]DOTA2每周TOP10 精彩击杀集锦vol.1
2014/06/25 DOTA
让python 3支持mysqldb的解决方法
2017/02/14 Python
Python 获取主机ip与hostname的方法
2018/12/17 Python
Python面向对象程序设计之私有属性及私有方法示例
2019/04/08 Python
python中pygame安装过程(超级详细)
2019/08/04 Python
TensorFLow 变量命名空间实例
2020/02/11 Python
使用Pytorch搭建模型的步骤
2020/11/16 Python
打印机墨盒:123Inkjets
2017/02/16 全球购物
阿里健康官方海外旗舰店:阿里健康国际自营
2017/11/24 全球购物
C语言笔试题
2014/09/04 面试题
咖啡店自主创业商业计划书
2014/01/22 职场文书
趣味比赛活动方案
2014/02/15 职场文书
结婚典礼主持词
2015/06/29 职场文书
出纳2015年度工作总结范文
2015/10/14 职场文书
《西门豹》教学反思
2016/02/23 职场文书
Python 装饰器(decorator)常用的创建方式及解析
2022/04/24 Python