jquery实现省市联动几种方式的对比

jquery实现省市联动的是老话题了,网上搜下一大堆,百花齐放,本文搜集几个,比较之余,等到使用之时也方便借鉴,我会注明原作者的出处的。

 

1. 直接将省市县内容做成json对象,写入js文件的,优点:兼容性,简单易用;缺点:存到数据库里面的是文本,对数据的再次查询效率低下。 可以改良一下,在数据库里面也存一套数据,但是务必请保持数据一致。

 

本段代码来自http://shouwang.blog.51cto.com/1186550/268190

 

代码中原作者将直辖市里面的区和县分开了,读者亦可自行简化合并一下即可,修改还是比较方便的。代码中有一个bug,默认第一项省份选择了北京,但是后面的市县里面并没有load数据,使用时请稍加修改。

 

另一位作者的文章,彦磊基于jQuery省市县联动插件,也是使用此方法,由于作者的注释加的已经非常详细了,此处不再赘述,读者根据自己喜欢来选择喜欢的风格吧。

 

2. 将数据存入数据库,通过服务器端查询,使用jquery进行动态加载。这种方法的优点是很好的保持了数据的一致性;缺点也很明显,每次都要到服务器端查询,比较消耗网络资源和服务器的cpu。使用这种方式需谨慎。

 

3. 将数据存入xml中,使用jquery的ajax方法,将数据异步加载到客户端,然后进行处理。服务器端将xml数据和数据库里面的数据结合使用。这是一种折中的办法,客户端的效率几乎可以达到与第一种方式时的同等效率,通过程序查询时几乎可以达到与第二种方式时的同等效率。

HTML代码: 

 

XML数据(部分)

 

此部分xml数据较老,请到国家统计局下载最新数据

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值