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 相关文章推荐
你所要知道JS(DHTML)中的一些技巧
Jan 09 Javascript
JS Date函数整理方便使用
Oct 23 Javascript
Jquery的基本对象转换和文档加载用法实例
Feb 25 Javascript
Js 获取当前函数参数对象的实现代码
Jun 20 Javascript
浅谈javascript:两种注释,声明变量,定义函数
Sep 29 Javascript
Vue中的混入的使用(vue mixins)
Jun 01 Javascript
JavaScript+Canvas实现彩色图片转换成黑白图片的方法分析
Jul 31 Javascript
js中offset,client , scroll 三大元素知识点总结
Sep 11 Javascript
vuex + keep-alive实现tab标签页面缓存功能
Oct 17 Javascript
JsonServer安装及启动过程图解
Feb 28 Javascript
Node Express用法详解【安装、使用、路由、中间件、模板引擎等】
May 13 Javascript
教你部署vue项目到docker
Apr 05 Vue.js
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
ionCube 一款类似zend的PHP加密/解密工具
2010/07/25 PHP
php 团购折扣计算公式
2011/11/24 PHP
PHP实现HTTP断点续传的方法
2015/06/17 PHP
Yii框架实现图片上传的方法详解
2017/05/20 PHP
Jquery AJAX 框架的使用方法
2009/11/03 Javascript
js function定义函数的几种不错方法
2014/02/27 Javascript
教你如何自定义百度分享插件以及bshare分享插件的分享按钮
2014/06/20 Javascript
JQuery控制Radio选中方法分析
2015/05/29 Javascript
Bootstrap中CSS的使用方法
2016/02/17 Javascript
分享一个插件实现水珠自动下落效果
2016/06/01 Javascript
JavaScript解八皇后问题的方法总结
2016/06/12 Javascript
基于JS实现导航条flash导航条
2016/06/17 Javascript
jQuery实现右键菜单、遮罩等效果代码
2016/09/27 Javascript
表单input项使用label同时引用Bootstrap库导致input点击效果区增大问题
2016/10/11 Javascript
前端js实现文件的断点续传 后端PHP文件接收
2016/10/14 Javascript
js入门之Function函数的使用方法【新手必看】
2016/11/22 Javascript
js的三种继承方式详解
2017/01/21 Javascript
Node.js 中exports 和 module.exports 的区别
2017/03/14 Javascript
node+koa2+mysql+bootstrap搭建一个前端论坛
2018/05/06 Javascript
JavaScript防止全局变量污染的方法总结
2018/08/02 Javascript
详解ES6 Fetch API HTTP请求实用指南
2018/11/14 Javascript
一篇文章带你使用Typescript封装一个Vue组件(简单易懂)
2020/06/05 Javascript
解决vue路由name同名,路由重复的问题
2020/08/05 Javascript
深入理解Python 代码优化详解
2014/10/27 Python
Python操作MySQL简单实现方法
2015/01/26 Python
Python中的下划线详解
2015/06/24 Python
python win32 简单操作方法
2017/05/25 Python
利用python实现微信头像加红色数字功能
2018/03/26 Python
Python基于datetime或time模块分别获取当前时间戳的方法实例
2019/02/19 Python
Python3的socket使用方法详解
2020/02/18 Python
python Shapely使用指南详解
2020/02/18 Python
Html5 postMessage实现跨域消息传递
2016/03/11 HTML / CSS
工业自动化专业毕业生推荐信
2013/11/18 职场文书
素食餐饮项目创业计划书
2014/02/02 职场文书
毕业论文致谢部分怎么写
2015/05/14 职场文书
聊聊pytorch测试的时候为何要加上model.eval()
2021/05/23 Python