AJAX-简单的省市县三级联动

index.html

 1 <!DOCTYPE html>
 2  <html>
 3      <head>
 4          <meta charset="utf-8">
 5          <title>ajax省市县三级联动</title>
 6      </head>
 7      <body>
 8         <select style="width: 102px;" id="pre"  onchange="changeCity(this);">
 9                     <option value=" ">--请选择省--</option>
10         </select>
11         <select style="width: 102px;" id="city" onchange="changeArea(this)";>
12                     <option value=" ">--请选择市--</option>
13         </select>
14         <select style="width: 102px;" id="area">
15                     <option value=" ">--请选择县--</option>
16         </select>
17      </body>
18      <script>
19         var pres = ["北京", "吉林", "山东"];
20
21         var cities = [
22                                      ["东城", "昌平", "海淀"],
23                                      ["长春", "吉林"],
24                                      ["济南", "青岛"]
25                      ];
26
27         var areas = [
28                                  [
29                                      ["东城1", "东城2", "东城3"],
30                                      ["昌平1", "昌平2", "昌平3"],
31                                      ["海淀1", "海淀2", "海淀3"]
32                                  ],
33                                  [
34                                      ["长春1", "长春2"],
35                                      ["吉林1", "吉林2", "吉林3"]
36                                  ],
37                                  [
38                                      ["济南1", "济南2"],
39                                      ["青岛1", "青岛2"]
40                                  ]
41                     ];
42          //设置一个省的公共下标
43          var pIndex = -1;                                //-1表示未被选中的状态
44          var preEle = document.getElementById("pre");
45          var cityEle = document.getElementById("city");
46          var areaEle = document.getElementById("area");
47          //先设置省
48          for (var i = 0; i < pres.length; i++) {
49              //创建节点: pres[i]->表示文本、 i->表示value
50              var myOption = new Option(pres[i], i);
51              //将元素添加到指定的节点(preEle放到myOption处)
52              preEle.options.add(myOption);
53           }
54          function changeCity(obj) {
55              //先清空(如果不想让cityEle、areaEle自动补全、则要将length=0->length=1)
56              cityEle.options.length = 0;
57              areaEle.options.length = 0;
58              //获取值
59              var val = obj.value;
60              //window.alert(val);                        //值为:0->北京、 1->吉林、2->山东
61              pIndex = obj.value;                         //这里先捆绑0、1、2
62              //获取cities
63              var cs = cities[val];
64              // window.alert(cs);                        //北京->东城,昌平,海淀
65              //获取默认区
66              var as = areas[val][0];
67
68              for (var i = 0; i < cs.length; i++) {
69                  var myOption = new Option(cs[i], i);
70                  cityEle.options.add(myOption);
71              }
72              for (var i = 0; i < as.length; i++) {
73                  var myOption = new Option(as[i], i);
74                  areaEle.options.add(myOption);
75              }
76          }
77          function changeArea(obj) {
78              var val = obj.value;
79              //window.alert(val);                      //吉林:0->长春、1->吉林
80              var as = areas[pIndex][val];
81              //window.alert(pIndex);                   //这里释放0、1、2
82              //先清空
83              areaEle.options.length = 0;               //(如果不想让cityEle、areaEle自动补全、则要将length=0->length=1)
84              for (var i = 0; i < as.length; i++) {
85                  var myOption = new Option(as[i], i);
86                  areaEle.options.add(myOption);
87              }
88          }
89      </script>
90  </html>

效果图

时间: 2024-11-06 09:25:49

AJAX-简单的省市县三级联动的相关文章

asp.net(c#)用Ajax调用web 服务实现省市县三级联动

1.先说说硬件配置,我最开始是在Win7(I7 4770,8G RAM,2T硬盘)里装ubuntu10.10 64位系统(4G RAM,200G 硬盘)进行源码编译,大概花了3个多小时.而且还多次出现outofmemoryerror 错误.最后将硬件升级为I7 4770.16G内存.2T硬盘,不装虚拟机,直接跑Ubuntu 10.10系统,Swap分区为16G,编译一次大概花了40分钟,没有报任何错误. 所以不推荐在虚拟机里面跑. 2.根据官方文档配置编译环境: 官方文档说的是在"发布包/Sof

android:省市县三级联动(基于json和spring)

一.请看效果图": 二.程序的代码: 1.MainActivity.java package com.loveplusplus.loader.demo.ui; import org.json.JSONArray; import org.json.JSONException; import org.json.JSONObject; import android.app.Activity; import android.os.Bundle; import android.os.Handler; im

JavaScript解析XML实现省市县三级联动

JavaScript解析XML实现省市县三级联动,简单易用,只需要一个XML和一个js就能能实现,下载后代开HTML就能看到效果.  原文:JavaScript解析XML实现省市县三级联动 源代码下载地址:http://www.zuidaima.com/share/1550463310056448.htm JavaScript解析XML实现省市县三级联动

Android省市县三级联动 真实项目抽出 调用只需3行代码 源码免积分下载

写在前面:没想到短短一夜之间就有910次阅读量,迄今为止最高阅读量的一篇,小激动! 项目源码:包含日期.省市县两种选择器[资源积分:0分] ,APK安装包下载,没有CSDN账户的的点此下载源码 fastjson:自己复制博客里源码的小伙伴,注意导入fastjson框架哦!阿里巴巴出品的最快json解析框架 日期选择器:效果图中的选择年月日的日期选择器 任何问题,欢迎评论:源码下载不成功的留下邮箱:文章我还在维护,持续优化,有问题的小伙伴积极评论哈. 先上效果图: 样式可以修改xml文件 省市县三

Android 省市县 三级联动(android-wheel的使用)[转]

转载:http://blog.csdn.net/lmj623565791/article/details/23382805 今天没事跟群里面侃大山,有个哥们说道Android Wheel这个控件,以为是Andriod内置的控件,google一把,发现是个github上的一个控件. 下载地址:https://code.google.com/p/android-wheel/    发现很适合做省市县三级联动就做了一个. 先看下效果图: 1.首先导入github上的wheel项目 2.新建个项目,然后

Android 省市县 三级联动(android-wheel的使用)

转载请注明出处:http://blog.csdn.net/lmj623565791/article/details/23382805 今天没事跟群里面侃大山,有个哥们说道Android Wheel这个控件,以为是Andriod内置的控件,google一把,发现是个github上的一个控件. 下载地址:https://code.google.com/p/android-wheel/    发现很适合做省市县三级联动就做了一个. 先看下效果图: 1.首先导入github上的wheel项目 2.新建个

全国最标准的、最完整的省市县三级联动选择 - 大型企业信息化系统集成快速开发平台

在使用通用权限管理系统时,需要经常使用省市县三级联动选择,在网上看到不少这类例子,感觉不是很满足我们的需求, 在使用的时候也用过通用权限系统中的省市县接口,为减少对接口的调用,现将其改为JS文件调用的方式:样式如下 JS文件截图 这个JS文件可根据基础信息中省市县资料的变更重新生成.其自动生成方法调用如下图: 省市县数据基本变化应该很小,为方便大家提供最新生成的JS文件和demo: district.js /* * UPDATE DATE:2015-01-06 22:04:16 songbiao

day01课程回顾,数据类型,(用户登录限制登录三次,购物车,省市县三级联动)

Day01 Python的分类 Cpython:代码àc字节码->机器码   一行一行的编译执行 Pypy:   代码àc字节码->机器码   全部转换完再执行 其他python  代码-->其他字节码-->机器码 Python的执行 Windows:C:\Python35\python.exe    D:\1.txt(python可执行文件路径---解释器   执行文件) Linux:可以在文件的头部写#!/usr/bin/python    python安装路径(用命令wher

购物车和用户交互,显示省市县三级联动的选择

购物车 购物车 功能要求: 要求用户输入总资产,例如:2000 显示商品列表,让用户根据序号选择商品,加入购物车 购买,如果商品总额大于总资产,提示账户余额不足,否则,购买成功. 附加:可充值.某商品移除购物车 asset_all = 0 m1 = input('请输入金额:') mon_all = int(m1) goods = [ {"name": "电脑", "price": 1999}, {"name": "