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 中的事件教程
Apr 05 Javascript
jquery 事件对象属性小结
Apr 27 Javascript
js借助ActiveXObject实现创建文件
Sep 29 Javascript
jquery配合css简单实现返回顶部效果
Sep 30 Javascript
判断javascript的数据类型(示例代码)
Dec 11 Javascript
使用不同的方法结合/合并两个JS数组
Sep 18 Javascript
Node.js的特点和应用场景介绍
Nov 04 Javascript
AngularJS基础 ng-list 指令详解及示例代码
Aug 02 Javascript
easyui combogrid实现本地模糊搜索过滤多列
May 13 Javascript
Vue ElementUI之Form表单验证遇到的问题
Aug 21 Javascript
jQuery实现获取form表单内容及绑定数据到form表单操作分析
Jul 03 jQuery
用Javascript实现发送短信验证码间隔功能
Feb 08 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-cgi.exe - FastCGI 进程超过了配置的请求超时时限)的问题
2013/07/03 PHP
PHP读取RSS(Feed)简单实例
2014/06/12 PHP
php通过获取头信息判断图片类型的方法
2015/06/26 PHP
PHP实现操作redis的封装类完整实例
2015/11/14 PHP
Symfony2创建页面实例详解
2016/03/18 PHP
遍历echsop的region表形成缓存的程序实例代码
2016/11/01 PHP
php微信公众号开发之秒杀
2018/10/20 PHP
php 多继承的几种常见实现方法示例
2019/11/18 PHP
Ruffy javascript 学习笔记
2009/11/30 Javascript
javascript面向对象之访问对象属性的两种方式分析
2015/01/13 Javascript
面向切面编程(AOP)的理解
2015/05/01 Javascript
JS+CSS实现的漂亮渐变背景特效代码(6个渐变效果)
2016/03/25 Javascript
JS实现图文并茂的tab选项卡效果示例【附demo源码下载】
2016/09/21 Javascript
JavaScript 字符串常用操作小结(非常实用)
2016/11/30 Javascript
Bootstrap进度条实现代码解析
2017/03/07 Javascript
js实现图片粘贴上传到服务器并展示的实例
2017/11/08 Javascript
解决vue-cli + webpack 新建项目出错的问题
2018/03/20 Javascript
jQuery实现的响应鼠标移动方向插件用法示例【附源码下载】
2018/08/28 jQuery
原生js实现移动端Touch轮播图的方法步骤
2019/01/03 Javascript
详解vue引入子组件方法
2019/02/12 Javascript
详解小程序毫秒级倒计时(适用于拼团秒杀功能)
2019/05/05 Javascript
微信小程序webview组件交互,内联h5页面并网页实现微信支付实现解析
2019/08/16 Javascript
Javascript 类型转换、封闭函数及常见内置对象操作示例
2019/11/15 Javascript
[51:26]DOTA2上海特级锦标赛主赛事日 - 2 胜者组第一轮#3Secret VS OG第二局
2016/03/03 DOTA
[05:06]DOTA2-DPC中国联赛 正赛 VG vs Magma选手采访
2021/03/11 DOTA
在Python中操作文件之read()方法的使用教程
2015/05/24 Python
python os模块在系统管理中的应用
2020/06/22 Python
pytorch 移动端部署之helloworld的使用
2020/10/30 Python
HTML5 表单验证失败的提示语问题
2017/07/13 HTML / CSS
英国鲜花递送:Blossoming Gifts
2020/07/10 全球购物
销售经理工作职责范文
2013/12/03 职场文书
财政局长自荐信范文
2013/12/22 职场文书
医疗纠纷协议书
2014/04/16 职场文书
农贸批发市场管理制度
2015/08/07 职场文书
2016特色励志班级口号
2015/12/24 职场文书
Python作用域和名称空间的详细介绍
2022/04/13 Python