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省市级联实现的更多相关文章

  1. 纯js实现省市级联效果

    我们都知道一般有注册的时候会让用户填入省市啊地区什么的,然后我就想使用纯js制作一个省市级联的效果,只是用于学习以及回顾温习用,首先看下效果图,界面很丑啊,不要嫌弃! 首先还是先看下我的项目目录吧 很 ...

  2. Ajax异步刷新省市级联

    省市级联在web前端用户注册使用非常广泛.Ajax异步刷新省市级联.如图:选择不同的区,自动加载相应的街. <TD class=field>位 置:</TD> <TD&g ...

  3. JavaScript 省市级联效果

    JavaScript 省市级联效果 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " ...

  4. 省市级联.net

    初学javascript,编译省市级联,使用json在一般处理程序中编译,利用ajax传递数据到web前台 <html xmlns="http://www.w3.org/1999/xh ...

  5. JS动态级联菜单

    JS动态级联菜单是前端常用的一个功能,特此抽时间研究了下,附上代码 <html> <head> <meta charset="utf-8" /> ...

  6. JavaScript实现省市级联效果实例

    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...

  7. [JS]以下是JS省市联动菜单代码

    以下是JS省市联动菜单代码: 代码一: <html> <head> <title></title> <script language=" ...

  8. javascript中的省市级联效果

    学习javascript的时候都遇到过这样的需求,不仅是省市,还有其他的一些场景,看看关键的代码有哪些吧. <head runat="server"> <titl ...

  9. 全国省市级联数据sql语句 mysql版

    全国省市级联数据sql语句 mysql版 --省级 provincial create table provincial ( provincialID int, provincialName ), p ...

随机推荐

  1. 数据库查询语句报错-ORA-00911: invalid character

    数据库查询语句报错-ORA-00911: invalid character 根据自己经验总结下: 1.都是分号惹的祸,有时候sql语句后面有分好导致这种错误 2.还有一种是从别处copy过来的sql ...

  2. Xamarin.Android服务的实现

    一.服务的生命周期 服务与活动一样,在它的整个生命周期中存在着一些事件,下图可以很好解释整个过程以及涉及到的方法: 在真实的使用中,Service来还包含一个OnBind方法,并且必须要使用该方法,但 ...

  3. 转 安装PHP出现make: *** [sapi/cli/php] Error 1 解决办法

    ext/iconv/.libs/iconv.o: In function `php_iconv_stream_filter_ctor':/home/king/php-5.2.13/ext/iconv/ ...

  4. Linux 防火墙firewalld

    1.列出所有支持的 zone 和查看当前的默认 zone:[root@lxjtest ~]# systemctl start firewalld[root@lxjtest ~]# firewall-c ...

  5. alias别名使用

    rhel系列的别名使用,方便操作! 功能说明:设置指令的别名.语 法:alias   [别名]  =  [指令名称]参 数 :若不加任何参数,则列出目前所有的别名设置.举    例 :ermao@lo ...

  6. 使用nmap查看web服务支持的http methods

    安装nmap yum install nmap 查看web server支持的http methods u02 ~]$ nmap -p --script http-methods www.somewh ...

  7. (转)Delta3D源码分析

    最近学习Delta3D,  2.4版忙着发布,一直不能成功编译SimCore, 索性静下心来看看源码,官网上竟然提供了几个重要组建的软件设计说明书(SDD),虽说基本都是2005版了,不过我看了后觉得 ...

  8. ios中非ARC项目中引用ARC文件

    下图即可 选中工程->TARGETS->相应的target然后选中右侧的“Build Phases”,向下就找到“Compile Sources”了.如何在未使用arc的工程中引入一个使用 ...

  9. df看到的文件系统容量跟parted看到的分区容量差别较大的解决方法

    下午同事在自己的开发机上遇到题目说到的问题,它看到挂在到/dev/sda磁盘分区5上的ext4文件系统的容量显著小于该分区的大小 df看到的文件系统容量: #df -h /dev/sda5 Files ...

  10. ajax, jQuery, jQueryeasyUI

    1.ajax与jQueryajax是jquery库里面的一个被封装好的函数,可以拿来直接使用.没有jquery的话,ajax的使用就得用原生的javascript去写,比较麻烦. 2.jQuery E ...