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 相关文章推荐
jQuery 类twitter的文本字数限制带提示效果插件
Apr 16 Javascript
JS 日期比较大小的简单实例
Jan 13 Javascript
JavaScript实现DIV层拖动及动态增加新层的方法
May 12 Javascript
在jQuery中使用$而避免跟其它库产生冲突的方法
Aug 13 Javascript
Angular的Bootstrap(引导)和Compiler(编译)机制
Jun 20 Javascript
jquery validate表单验证插件
Sep 06 Javascript
Javascript中构造函数要注意的一些坑
Jan 23 Javascript
node.js 中间件express-session使用详解
May 20 Javascript
es6在react中的应用代码解析
Nov 08 Javascript
使用webpack4编译并压缩ES6代码的方法示例
Apr 24 Javascript
vue学习之Vue-Router用法实例分析
Jan 06 Javascript
如何在Vue中使localStorage具有响应式(思想实验)
Jul 14 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作的文本留言本的例子(三)
2006/10/09 PHP
php字符串操作针对负值的判断分析
2016/07/28 PHP
PHP中CheckBox多选框上传失败的代码写法
2017/02/13 PHP
PHP将身份证正反面两张照片合成一张图片的代码
2017/04/08 PHP
php基于自定义函数记录log日志方法
2017/07/21 PHP
smarty模板的使用方法实例分析
2019/09/18 PHP
Html中JS脚本执行顺序简单举例说明
2010/06/19 Javascript
推荐40个非常优秀的jQuery插件和教程【系列三】
2011/11/09 Javascript
用JavaScript仿PS里的羽化效果代码
2011/12/20 Javascript
js监控IE火狐浏览器关闭、刷新、回退、前进事件
2014/07/23 Javascript
如何让你的Lightbox支持滚轮缩放及Base64图片
2014/12/04 Javascript
基于JS实现的随机数字抽签实例
2016/12/08 Javascript
完美解决jQuery的hover事件在IE中不停闪动的问题
2017/02/10 Javascript
jQuery导航条固定定位效果实例代码
2017/05/26 jQuery
移动前端图片压缩上传的实例
2017/12/06 Javascript
JavaScript 中定义函数用 var foo = function () {} 和 function foo()区别介绍
2018/03/01 Javascript
在 Angular6 中使用 HTTP 请求服务端数据的步骤详解
2018/08/06 Javascript
关于RxJS Subject的学习笔记
2018/12/05 Javascript
uin-app+mockjs实现本地数据模拟
2020/08/26 Javascript
vue浏览器返回监听的具体步骤
2021/02/03 Vue.js
详解python中字典的循环遍历的两种方式
2017/02/07 Python
Python md5与sha1加密算法用法分析
2017/07/14 Python
Python 删除连续出现的指定字符的实例
2018/06/29 Python
Python中fnmatch模块的使用详情
2018/11/30 Python
关于tf.nn.dynamic_rnn返回值详解
2020/01/20 Python
python hmac模块验证客户端的合法性
2020/11/07 Python
台湾深度自由行旅游平台:Tripbaa趣吧
2017/10/10 全球购物
印度首选时尚目的地:Reliance Trends
2018/01/17 全球购物
CAT鞋加拿大官网:CAT Footwear加拿大
2020/08/05 全球购物
Unix如何添加新的用户
2014/08/20 面试题
外贸销售员求职的自我评价
2013/11/23 职场文书
学生打架检讨书1000字
2014/01/16 职场文书
餐厅楼面部长岗位职责范文
2014/02/16 职场文书
大型演出策划方案
2014/05/28 职场文书
社区两委对照检查材料
2014/08/23 职场文书
python基础之文件操作
2021/10/24 Python