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 相关文章推荐
In Javascript Class, how to call the prototype method.(three method)
Jan 09 Javascript
图片翻转效果具体实现代码
Jan 09 Javascript
jquery删除数据记录时的弹出提示效果
May 06 Javascript
JavaScript基础函数整理汇总
Jan 30 Javascript
Javascript非构造函数的继承
Apr 27 Javascript
JS实现的几个常用算法
Nov 12 Javascript
浅谈Node.js:Buffer模块
Dec 05 Javascript
浅述Javascript的外部对象
Dec 07 Javascript
微信小程序 地图map详解及简单实例
Jan 10 Javascript
JS去除字符串中空格的方法
Feb 14 Javascript
使用 Jest 和 Supertest 进行接口端点测试实例详解
Apr 25 Javascript
JavaScript判断数据类型有几种方法及区别介绍
Sep 02 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
Joomla实现组件中弹出一个模式(modal)窗口的方法
2016/05/04 PHP
经验几则 推荐
2006/09/05 Javascript
PJBlog插件 防刷新的在线播放器
2006/10/25 Javascript
IE和firefox浏览器的event事件兼容性汇总
2009/12/06 Javascript
理解Javascript_03_javascript全局观
2010/10/11 Javascript
jQuery:节点(插入,复制,替换,删除)操作
2013/03/04 Javascript
jquery ajax提交整个表单元素的快捷办法
2013/03/27 Javascript
JS获取几种URL地址的方法小结
2014/02/26 Javascript
javascript实现数组中的内容随机输出
2015/08/11 Javascript
Validform表单验证总结篇
2016/10/31 Javascript
微信小程序实现运动步数排行功能(可删除)
2018/07/05 Javascript
vue打包之后生成一个配置文件修改接口的方法
2018/12/09 Javascript
微信小程序自定义tabBar在uni-app的适配详解
2019/09/30 Javascript
微信小程序实现吸顶特效
2020/01/08 Javascript
nodeJS与MySQL实现分页数据以及倒序数据
2020/06/05 NodeJs
vue项目中播放rtmp视频文件流的方法
2020/09/17 Javascript
[01:32:50]DOTA2-DPC中国联赛 正赛 DLG vs XG BO3 第一场 1月25日
2021/03/11 DOTA
由Python运算π的值深入Python中科学计算的实现
2015/04/17 Python
python中Matplotlib实现绘制3D图的示例代码
2017/09/04 Python
Anaconda下安装mysql-python的包实例
2018/06/11 Python
mac安装scrapy并创建项目的实例讲解
2018/06/13 Python
python 实现得到当前时间偏移day天后的日期方法
2018/12/31 Python
python2爬取百度贴吧指定关键字和图片代码实例
2019/08/14 Python
关于Theano和Tensorflow多GPU使用问题
2020/06/19 Python
CSS3+DIV实现漂亮的动画彩色标签
2016/06/16 HTML / CSS
html5 web本地存储将取代我们的cookie
2012/12/26 HTML / CSS
世界上最大的曲棍球商店:Pro Hockey Life
2017/10/30 全球购物
荷兰手表网站:Watch2Day
2018/07/02 全球购物
CHARLES & KEITH英国官网:新加坡时尚品牌
2018/07/04 全球购物
L’Artisan Parfumeur官网:法国香水品牌
2020/08/11 全球购物
岗位职责的定义
2013/11/10 职场文书
小学见习报告
2015/06/23 职场文书
2015年中学团委工作总结
2015/07/22 职场文书
文案策划岗位个人自我评价(范文)
2019/08/08 职场文书
Python中相见恨晚的技巧
2021/04/13 Python
ElementUI实现el-form表单重置功能按钮
2021/07/21 Javascript