js 省地市级联选择


Posted in Javascript onFebruary 07, 2010

demo1为最简单的一份实现,页面id配置需在js文件中写入,适合简单情况
demo2增加了动态配置,可将配置项传入,适合页面存在多个级联下拉
以下为地市数据json格式,可使用ajax获取或者做成ashx/asmx服务也可直接保存为js文件,可根据你的地市数据调整格式,并修改对应源码

var _ds_data=[ 
{ 
id:0, 
name:"\u5317\u4EAC", 
city:[ 
{ 
id:1, 
name:"\u5317\u4EAC\u5E02", 
area:[{id:1,name:"\u4E1C\u57CE\u533A"},{...},{...}...] 
},...] 
}

为防止乱码,使用了unicode编码,转换代码如下:
/// <summary> 
/// 将原始字串转换为unicode,格式为\u....\u.... 
/// </summary> 
public static string StringToUnicode(string srcText) 
{ 
string dst = ""; 
char[] src = srcText.ToCharArray(); 
for (int i = 0; i < src.Length; i++) 
{ 
byte[] bytes = Encoding.Unicode.GetBytes(src[i].ToString()); 
string str = @"\u" + bytes[1].ToString("X2") + bytes[0].ToString("X2"); 
dst += str; 
} 
return dst; 
} 
/// <summary> 
/// 将Unicode字串\u....\u....格式字串转换为原始字符串 
/// </summary> 
public static string UnicodeToString(string srcText) 
{ 
string dst = ""; 
string src = srcText; 
int len = srcText.Length / 6; 
for (int i = 0; i <= len - 1; i++) 
{ 
string str = ""; 
str = src.Substring(0, 6).Substring(2); 
src = src.Substring(6); 
byte[] bytes = new byte[2]; 
bytes[1] = byte.Parse(int.Parse(str.Substring(0, 2), NumberStyles.HexNumber).ToString()); 
bytes[0] = byte.Parse(int.Parse(str.Substring(2, 2), NumberStyles.HexNumber).ToString()); 
dst += Encoding.Unicode.GetString(bytes); 
} 
return dst; 
}

http://xiazai.3water.com/201002/yuanma/cityselector.rar
打包下载地址
Javascript 相关文章推荐
获取JavaScript用户自定义类的类名称的代码
Mar 08 Javascript
js中eval详解
Mar 30 Javascript
js 自动播放的实例代码
Nov 19 Javascript
jQuery对val和atrr(&quot;value&quot;)赋值的区别介绍
Sep 26 Javascript
javascript常用代码段搜集
Dec 04 Javascript
js实现单击图片放大图片的方法
Feb 17 Javascript
javascript常见数字进制转换实例分析
Apr 21 Javascript
Bootstrap CSS使用方法
Dec 23 Javascript
原生js实现图片放大缩小计时器效果
Jan 20 Javascript
Vue源码解读之Component组件注册的实现
Aug 24 Javascript
vue实现点击出现操作弹出框的示例
Nov 05 Javascript
vue项目中js-cookie的使用存储token操作
Nov 13 Javascript
js 自定义的联动下拉框
Feb 07 #Javascript
比较搞笑的js陷阱题
Feb 07 #Javascript
javascript 鼠标拖动图标技术
Feb 07 #Javascript
数组Array进行原型prototype扩展后带来的for in遍历问题
Feb 07 #Javascript
CutePsWheel javascript libary 控制输入文本框为可使用滚轮控制的js库
Feb 07 #Javascript
JavaScript 精粹读书笔记(1,2)
Feb 07 #Javascript
一些mootools的学习资源
Feb 07 #Javascript
You might like
php数组函数序列之array_key_exists() - 查找数组键名是否存在
2011/10/29 PHP
PHP生成短网址的3种方法代码实例
2014/07/08 PHP
PHP中使用虚代理实现延迟加载技术
2014/11/05 PHP
PHP7.0安装笔记整理
2015/08/28 PHP
基于PHP给大家讲解防刷票的一些技巧
2015/11/18 PHP
Thinkphp 中 distinct 的用法解析
2016/12/14 PHP
HTML中事件触发列表与解说
2007/07/09 Javascript
两种WEB下的模态对话框 (asp.net或js的分别实现)
2009/12/02 Javascript
jquery.validate使用攻略 第一部
2010/07/01 Javascript
优化Node.js Web应用运行速度的10个技巧
2014/09/03 Javascript
js日期范围初始化得到前一个月日期的方法
2015/05/05 Javascript
js文本框走动跑马灯效果代码分享
2015/08/25 Javascript
静态页面html中跳转传值的JS处理技巧
2016/06/22 Javascript
js获取上传文件的绝对路径实现方法
2016/08/02 Javascript
利用纯Vue.js构建Bootstrap组件
2016/11/03 Javascript
JS瀑布流实现方法实例分析
2016/12/19 Javascript
详解vue组件化开发-vuex状态管理库
2017/04/10 Javascript
bootstrap表单示例代码分享
2017/05/18 Javascript
详解vue-cli中配置sass
2017/06/21 Javascript
Postman的下载及安装教程详解
2018/10/16 Javascript
vue中使用vue-cli接入融云实现即时通信
2019/04/19 Javascript
ElementUI Tree 树形控件的使用并给节点添加图标
2020/02/27 Javascript
解决vant中 tab栏遇到的坑 van-tabs
2020/11/04 Javascript
解决vue init webpack 下载依赖卡住不动的问题
2020/11/09 Javascript
[03:39]这就是刀塔,我们是冠军!燃情短片讲述我们的DOTA故事
2019/07/02 DOTA
django项目搭建与Session使用详解
2018/10/10 Python
python实现狄克斯特拉算法
2019/01/17 Python
Python基础之循环语句用法示例【for、while循环】
2019/03/23 Python
Django网络框架之HelloDjango项目创建教程
2019/06/06 Python
美国在线购买内衣网站:HerRoom
2020/02/22 全球购物
人事行政主管岗位职责
2013/12/22 职场文书
商场消防管理制度
2014/01/12 职场文书
务虚会发言材料
2014/12/25 职场文书
鲁迅故里导游词
2015/02/05 职场文书
2015年个人实习工作总结
2015/05/28 职场文书
分析Netty直接内存原理及应用
2021/06/14 Java/Android