原生JS省市联动,方便而且容易扩展

//省市联动
cities = new Object();
cities[‘台湾‘]=new Array(‘台北‘,‘台南‘,‘其他‘);
cities[‘马来西亚‘]=new Array(‘Malaysia‘);
cities[‘北京‘]=new Array(‘北京‘);
cities[‘上海‘]=new Array(‘上海‘);
cities[‘天津‘]=new Array(‘天津‘);
cities[‘重庆‘]=new Array(‘重庆‘);
cities[‘河北省‘]=new Array(‘石家庄‘, ‘张家口‘, ‘承德‘, ‘秦皇岛‘, ‘唐山‘, ‘廊坊‘, ‘保定‘, ‘沧州‘, ‘衡水‘, ‘邢台‘, ‘邯郸‘);
cities[‘山西省‘]=new Array(‘太原‘, ‘大同‘, ‘朔州‘, ‘阳泉‘, ‘长治‘, ‘晋城‘, ‘忻州‘, ‘吕梁‘, ‘晋中‘, ‘临汾‘, ‘运城‘);
cities[‘辽宁省‘]=new Array(‘沈阳‘, ‘朝阳‘, ‘阜新‘, ‘铁岭‘, ‘抚顺‘, ‘本溪‘, ‘辽阳‘, ‘鞍山‘, ‘丹东‘, ‘大连‘, ‘营口‘, ‘盘锦‘, ‘锦州‘, ‘葫芦岛‘);
cities[‘吉林省‘]=new Array(‘长春‘, ‘白城‘, ‘松原‘, ‘吉林‘, ‘四平‘, ‘辽源‘, ‘通化‘, ‘白山‘, ‘延边‘);
cities[‘黑龙江省‘]=new Array(‘哈尔滨‘, ‘齐齐哈尔‘, ‘黑河‘, ‘大庆‘, ‘伊春‘, ‘鹤岗‘, ‘佳木斯‘, ‘双鸭山‘, ‘七台河‘, ‘鸡西‘, ‘牡丹江‘, ‘绥化‘, ‘大兴安‘);
cities[‘江苏省‘]=new Array(‘南京‘, ‘徐州‘, ‘连云港‘, ‘宿迁‘, ‘淮阴‘, ‘盐城‘, ‘扬州‘, ‘泰州‘, ‘南通‘, ‘镇江‘, ‘常州‘, ‘无锡‘, ‘苏州‘);
cities[‘浙江省‘]=new Array(‘杭州‘, ‘湖州‘, ‘嘉兴‘, ‘舟山‘, ‘宁波‘, ‘绍兴‘, ‘金华‘, ‘台州‘, ‘温州‘, ‘丽水‘);
cities[‘安徽省‘]=new Array(‘合肥‘, ‘宿州‘, ‘淮北‘, ‘阜阳‘, ‘蚌埠‘, ‘淮南‘, ‘滁州‘, ‘马鞍山‘, ‘芜湖‘, ‘铜陵‘, ‘安庆‘, ‘黄山‘, ‘六安‘, ‘巢湖‘, ‘池州‘, ‘宣城‘);
cities[‘福建省‘]=new Array(‘福州‘, ‘南平‘, ‘三明‘, ‘莆田‘, ‘泉州‘, ‘厦门‘, ‘漳州‘, ‘龙岩‘, ‘宁德‘);
cities[‘江西省‘]=new Array(‘南昌‘, ‘九江‘, ‘景德镇‘, ‘鹰潭‘, ‘新余‘, ‘萍乡‘, ‘赣州‘, ‘上饶‘, ‘抚州‘, ‘宜春‘, ‘吉安‘);
cities[‘山东省‘]=new Array(‘济南‘, ‘聊城‘, ‘德州‘, ‘东营‘, ‘淄博‘, ‘潍坊‘, ‘烟台‘, ‘威海‘, ‘青岛‘, ‘日照‘, ‘临沂‘, ‘枣庄‘, ‘济宁‘, ‘泰安‘, ‘莱芜‘, ‘滨州‘, ‘菏泽‘);
cities[‘河南省‘]=new Array(‘郑州‘, ‘三门峡‘, ‘洛阳‘, ‘焦作‘, ‘新乡‘, ‘鹤壁‘, ‘安阳‘, ‘濮阳‘, ‘开封‘, ‘商丘‘, ‘许昌‘, ‘漯河‘, ‘平顶山‘, ‘南阳‘, ‘信阳‘, ‘周口‘, ‘驻马店‘);
cities[‘湖北省‘]=new Array(‘武汉‘, ‘十堰‘, ‘襄攀‘, ‘荆门‘, ‘孝感‘, ‘黄冈‘, ‘鄂州‘, ‘黄石‘, ‘咸宁‘, ‘荆州‘, ‘宜昌‘, ‘恩施‘, ‘襄樊‘);
cities[‘湖南省‘]=new Array(‘长沙‘, ‘张家界‘, ‘常德‘, ‘益阳‘, ‘岳阳‘, ‘株洲‘, ‘湘潭‘, ‘衡阳‘, ‘郴州‘, ‘永州‘, ‘邵阳‘, ‘怀化‘, ‘娄底‘, ‘湘西‘);
cities[‘广东省‘]=new Array(‘广州‘, ‘清远‘, ‘韶关‘, ‘河源‘, ‘梅州‘, ‘潮州‘, ‘汕头‘, ‘揭阳‘, ‘汕尾‘, ‘惠州‘, ‘东莞‘, ‘深圳‘, ‘珠海‘, ‘江门‘, ‘佛山‘, ‘肇庆‘, ‘云浮‘, ‘阳江‘, ‘茂名‘, ‘湛江‘);
cities[‘海南省‘]=new Array(‘海口‘, ‘三亚‘);
cities[‘四川省‘]=new Array(‘成都‘, ‘广元‘, ‘绵阳‘, ‘德阳‘, ‘南充‘, ‘广安‘, ‘遂宁‘, ‘内江‘, ‘乐山‘, ‘自贡‘, ‘泸州‘, ‘宜宾‘, ‘攀枝花‘, ‘巴中‘, ‘达川‘, ‘资阳‘, ‘眉山‘, ‘雅安‘, ‘阿坝‘, ‘甘孜‘, ‘凉山‘);
cities[‘贵州省‘]=new Array(‘贵阳‘, ‘六盘水‘, ‘遵义‘, ‘毕节‘, ‘铜仁‘, ‘安顺‘, ‘黔东南‘, ‘黔南‘, ‘黔西南‘);
cities[‘云南省‘]=new Array(‘昆明‘, ‘曲靖‘, ‘玉溪‘, ‘丽江‘, ‘昭通‘, ‘思茅‘, ‘临沧‘, ‘保山‘, ‘德宏‘, ‘怒江‘, ‘迪庆‘, ‘大理‘, ‘楚雄‘, ‘红河‘, ‘文山‘, ‘西双版纳‘);
cities[‘陕西省‘]=new Array(‘西安‘, ‘延安‘, ‘铜川‘, ‘渭南‘, ‘咸阳‘, ‘宝鸡‘, ‘汉中‘, ‘榆林‘, ‘商洛‘, ‘安康‘);
cities[‘甘肃省‘]=new Array(‘兰州‘, ‘嘉峪关‘, ‘金昌‘, ‘白银‘, ‘天水‘, ‘酒泉‘, ‘张掖‘, ‘武威‘, ‘庆阳‘, ‘平凉‘, ‘定西‘, ‘陇南‘, ‘临夏‘, ‘甘南‘);
cities[‘青海省‘]=new Array(‘西宁‘, ‘海东‘, ‘西宁‘, ‘海北‘, ‘海南‘, ‘黄南‘, ‘果洛‘, ‘玉树‘, ‘海西‘);
cities[‘内蒙古‘]=new Array(‘呼和浩特‘, ‘包头‘, ‘乌海‘, ‘赤峰‘, ‘呼伦贝尔盟‘, ‘兴安盟‘, ‘哲里木盟‘, ‘锡林郭勒盟‘, ‘乌兰察布盟‘, ‘鄂尔多斯‘, ‘巴彦淖尔盟‘, ‘阿拉善盟‘);
cities[‘广西‘]=new Array(‘南宁‘, ‘桂林‘, ‘柳州‘, ‘梧州‘, ‘贵港‘, ‘玉林‘, ‘钦州‘, ‘北海‘, ‘防城港‘, ‘南宁‘, ‘百色‘, ‘河池‘, ‘柳州‘, ‘贺州‘);
cities[‘西藏‘]=new Array(‘拉萨‘, ‘那曲‘, ‘昌都‘, ‘林芝‘, ‘山南‘, ‘日喀则‘, ‘阿里‘);
cities[‘宁夏‘]=new Array(‘银川‘, ‘石嘴山‘, ‘吴忠‘, ‘固原‘);
cities[‘新疆‘]=new Array(‘乌鲁木齐‘, ‘克拉玛依‘, ‘喀什‘, ‘阿克苏‘, ‘和田‘, ‘吐鲁番‘, ‘哈密‘, ‘博尔塔拉‘, ‘昌吉‘, ‘巴音郭楞‘, ‘伊犁‘, ‘塔城‘, ‘阿勒泰‘);
cities[‘香港‘]=new Array(‘香港‘);
cities[‘澳门‘]=new Array(‘澳门‘);

function set_city(province, city){

  var pv, cv;
  var i, ii;

  pv=province.value;
  cv=city.value;
  city.length=1;

  if(pv==‘0‘) return;

  if(typeof(cities[pv])==‘undefined‘) return;

  for(i=0; i<cities[pv].length; i++){

      ii = i+1;

      city.options[ii] = new Option();

      city.options[ii].text = cities[pv][i];

      city.options[ii].value = cities[pv][i];

  }

}

时间: 2024-08-08 10:53:02

原生JS省市联动,方便而且容易扩展的相关文章

原生js :省市二级联动

在网上把了半天像二级联动, 多是:依赖于其他框架数据修改... 于是就有了下面自写的二级联动(原生JS,面向对象,数据可订制修改不局限于省市) <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>二级联动</title> </head> <body> <

js省市联动(适合小白)

<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title></title> <script type="text/javascrip

js省市联动

点击查看效果 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title> JS实现的全国省份城市联动

扩展原生js的一些方法

扩展原生js的Array类 1 Array.prototype.add = function(item){ 2 this.push(item); 3 } 4 Array.prototype.addRange = function(items){ 5 var length = items.length; 6 if(length!=0){ 7 for (var index = 0; index < length; index++) { 8 this.push(items[index]); 9 10

js实现的省市联动

最近工作,要用到省市联动的功能.网上搜了一下,发现有很多这样的例子,看了不少实例,把觉得写得不错的代码穿上来,好给大家分享一下. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/199

原生js的Function,Array,Object构造函数的prototype原型方法扩展

在js中,Function构造函数的实例化对象为Function,Array,Object构造函数. <script> Function.prototype.addMethod = function (name,fn) { this.prototype[name]=fn; } Array.addMethod('test',function(){ console.log('Array method add'); }); Object.addMethod('test',function(){ co

省市联动 js

工作中见到这个省市联动代码,虽然很简单也能写出来,还是随便把它记录下来. //省市联动 function area(obj_id, area_pId, data_call_back) { if (area_pId == -1) return; $.ajax({ type: 'GET', url: "/SysAdmin/Pages/tb_supplierAdd.aspx", data: { area_pId: area_pId }, dataType: 'json', success:

Json 基于jQuery+JSON的省市联动效果

helloweba.com 作者:月光光 时间:2012-09-12 21:57 标签: jQuery  JSON  Ajax  省市联动 省市区联动下拉效果在WEB中应用非常广泛,尤其在一些会员信息系统.电商网站最为常见.开发者一般使用Ajax实现无刷新下拉联动.本文将讲述,利用jQuery插件,通过读取JSON数据,实现无刷新动态下拉省市二(三)级联动效果. 查看演示 下载源码 HTML 首先在head中载入jquery库和cityselect插件. <script type="tex

原生JS编写图片切换效果和点击按钮的样式变化

这两天更进一步的了解了JS,老师让我们用原生的js编写图片切换和改变点击按钮样式,就是让我们学会怎么去把一个问题拆分,怎么将一个大问题拆分成许多的小问题,再用函数封装起来.比如一个点击按钮,让其点击时背景色发生改变,点击另一个时,上一个按钮要变回原来本有的颜色:这个问题用jquery,一行代码就搞定,但是用原生js就得分三个部分来考虑: 1.添加改变背景的样式. 2.怎么获取到除了当前点击的按钮以外其他的兄弟节点. 3.怎么去除按钮的样式属性. 也讲了事件委托,实现了可以删除新添加的元素的功能.