js省市级联实现
js省市级联实现。
for [element] in [collection] 用于循环下标,常用于json
for(index in arr){
console.info("下标:"+index+"值:"+arr[index]);
}
=====================分割线========================
<html>
<head>
<meta charset="UTF-8">
<title>基于JSON级联列表</title>
<script type="text/javascript">
//JSON:主要用于数据交换,其次json就是有格式的字符串
//var str = "{'name':'demo','age':'18'}";
//这样写符合JSON语法(字符串用双引号)
var str = '{"name":"demo","age":"18"}';
console.info("当前类型为:"+typeof(str));
var obj = JSON.parse(str);
console.info("当前类型为:"+typeof(obj));
//JSON输出访问的两种方式
console.info(obj.name+","+obj.age+"||"+obj['name']+","+obj['age']);
str=JSON.stringify(obj);
console.info("当前类型为:"+typeof(str));
//采用JSON格式来存储相应的数据和编码
var proJSON = {"1":"广东省","2":"湖北省"};
var cityJSON = {"1":{"020":"广州","0755":"深圳","0756","珠海"},"2":{"027":"武汉","0710":"襄樊","0715":"赤壁"}}
window.onload=function(){
var province = document.getElementById("province");
for(var temp in proJSOM){
province.add(new Option(proJSON[temp],temp));
}
}
function setCity(){
//只要触发了此事件,则二级菜单必须还原
var city=document.getElementById('city');
city.Option.length=1;
//获取被选中省会的值
var val = document.getElementById('province').value;
console.info("cityJSON:"+cityJSON[val]);
if(!cityJSON[val]){
return;
}
//通过选中的值获取二级菜单的json数据
var sonJSON=cityJSON[val];
for(temp in sonJSON){
city.add(new Option(sonJSON[temp],temp))
}
}
</script>
</head>
<body>
<!--数据的三种存储方式:
1:数据库
2:properties:存储非敏感数据,且key value 格式,省资源
3:XML:存储非敏感数据,且支持有结构 目前一般用于配置文件
4:硬编码:主要存储非敏感数据,且不改变的数据
-->
<select id="province" onChange="setCity()">
<option>--选择省会--</option>
</select>
<select id="city" >
<option>--选择城市--</option>
</select>
</body>
</html>
=====================分割线========================
<html>
<head>
<meta charset="UTF-8">
<title>基于数组级联列表</title>
<script type="text/javascript">
//js中数组的下标支持中文
var arr = new Array();
arr['广东省'] = ['广州','深圳','珠海'];
arr['湖北省'] = ['武汉','襄樊','赤壁'];
window.onload=function(){
//向省会赋值下拉列表框
var proSel = document.getElementById("province");
for(var temp in arr){
proSel.add(new Option(temp,temp))
}
}
function setCity(){
//清空当前下拉列表框的信息
var citySel = document.getElementById("city");
citySel.options.length=1;
//获取选中的省会信息
var pro = document.getElementById('province').value;
//如果选择获取提示信息则不执行
if(pro == ""){
return;
}
var citySel = document.getElementById('city');
for(var i=0;i<arr[pro].length;i++){
citySel.add(new Option(arr[pro][i],arr[pro][i]))
}
}
</script>
</head>
<body>
<select id="province" onChange="setCity()">
<option>--选择省会--</option>
</select>
<select id="city" >
<option>--选择城市--</option>
</select>
</body>
</html>
js省市级联实现的更多相关文章
- 纯js实现省市级联效果
我们都知道一般有注册的时候会让用户填入省市啊地区什么的,然后我就想使用纯js制作一个省市级联的效果,只是用于学习以及回顾温习用,首先看下效果图,界面很丑啊,不要嫌弃! 首先还是先看下我的项目目录吧 很 ...
- Ajax异步刷新省市级联
省市级联在web前端用户注册使用非常广泛.Ajax异步刷新省市级联.如图:选择不同的区,自动加载相应的街. <TD class=field>位 置:</TD> <TD&g ...
- JavaScript 省市级联效果
JavaScript 省市级联效果 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " ...
- 省市级联.net
初学javascript,编译省市级联,使用json在一般处理程序中编译,利用ajax传递数据到web前台 <html xmlns="http://www.w3.org/1999/xh ...
- JS动态级联菜单
JS动态级联菜单是前端常用的一个功能,特此抽时间研究了下,附上代码 <html> <head> <meta charset="utf-8" /> ...
- JavaScript实现省市级联效果实例
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...
- [JS]以下是JS省市联动菜单代码
以下是JS省市联动菜单代码: 代码一: <html> <head> <title></title> <script language=" ...
- javascript中的省市级联效果
学习javascript的时候都遇到过这样的需求,不仅是省市,还有其他的一些场景,看看关键的代码有哪些吧. <head runat="server"> <titl ...
- 全国省市级联数据sql语句 mysql版
全国省市级联数据sql语句 mysql版 --省级 provincial create table provincial ( provincialID int, provincialName ), p ...
随机推荐
- Customize Web Sessions List
To customize Fiddler's Web Sessions List, add rules using FiddlerScript to the OnBeforeRequest funct ...
- VS2015使用小技巧
VS2015常用快捷键 1.回到上一个光标位置/前进到下一个光标位置 1)回到上一个光标位置:使用组合键“Ctrl + -”; 2)前进到下一个光标位置:“Ctrl + Shift + - ” 2.复 ...
- ssi框架搭建
Struts2主要来源于webwork框架,与Struts1相比,在数据传递方面,Struts2提供了更加强大OGNL标签功能,使其能够通过在action中定义变量来直接与jsp页面中的数据进行相互传 ...
- Android Things专题 1.前世今生
文| 谷歌开发人员技术专家, 物联网方向 (IOT GDE) 王玉成(York Wang) 2016 年 12 月,Google 公布了 Developer Preview 版的 Android Th ...
- Linux使用笔记
1:Ubuntu系统获取超级权限: 在终端输入:sudo passwd,重置uinx密码.然后输入 su ,输入密码,即可进入root权限. 2:更改文件属性 Linux文件的基本权限有九个,分别是o ...
- CENTOS7更换YUM源为163源
访问地址为:http://mirrors.163.com/.help/centos.html 首先备份源: mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum. ...
- 12、java5锁java.util.concurrent.locks.Lock之ReentrantLock
JDK文档描述: public interface LockLock 实现提供了比使用 synchronized 方法和语句可获得的更广泛的锁定操作.此实现允许更灵活的结构,可以具有差别很大的属性,可 ...
- 常用bios flash闪存型号
常用flash IC芯片厂商及型号 制造商 4M 8M 16M 32M Atmel AT25DF321AT25DF321A AT25DF641 EON (cFeon) EN25F32EN25P ...
- Android控件进阶-自定义流式布局和热门标签控件
技术:Android+java 概述 在日常的app使用中,我们会在android 的app中看见 热门标签等自动换行的流式布局,今天,我们就来看看如何 自定义一个类似热门标签那样的流式布局吧,类 ...
- 俄罗斯方块-C语言-详注版
代码地址如下:http://www.demodashi.com/demo/14818.html 俄罗斯方块-C语言-详注版 概述 本文详述了C语言版俄罗斯方块游戏的原理以及实现方法,对游戏代码进行了详 ...