Skip to content
省市区街道四级联选择 Rails Engine Gem
Branch: master
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
app merge. Jun 3, 2016
bin init. Aug 12, 2013
config show select. Aug 12, 2013
db 1、areas.json 文件中不全港澳台信息,并增加 sensitive_areas 以示区分 May 11, 2016
gemfiles
lib 调整过滤港澳台的方法实现 May 12, 2016
spec 调整过滤港澳台的方法实现 May 12, 2016
.gitignore add push md Dec 7, 2015
.rspec config rspec. Aug 12, 2013
.travis.yml fixed travis-ci error. Dec 7, 2015
Appraisals update to rails 4.0. Dec 4, 2015
Gemfile update poltergeist. Dec 2, 2015
Gemfile.lock merge. Jun 3, 2016
MIT-LICENSE add MIT licentse to gemspec. Aug 15, 2013
PUSH.md update version to v0.0.6 Jan 17, 2016
README.md Add react version for readme Apr 28, 2016
Rakefile do not load gem tasks in rails app. Jan 17, 2016
china_city.gemspec update version 0.0.5 Dec 7, 2015

README.md

ChinaCity 省市区街道级联选择

Build Status

china_city

简介

这是一个基于 Rails Engine 开发的插件,为 Rails 项目增加省市区街道四级(或者省市区三级、省市二级)选择框,可用于实现收货地址等信息的录入。

数据来源

安装

Gemfile

gem 'china_city'

app/assets/javascripts/application.js

//= require 'jquery'
//= require 'china_city/jquery.china_city'

config/routes.rb

mount ChinaCity::Engine => '/china_city'

使用

可以参考 https://github.com/saberma/china_city_example 示例代码。

在页面中加入选择框,示例代码使用 slim 格式

  .city-group
    select.city-select
      option --省份--
      = options_for_select(ChinaCity.list)
    select.city-select
      option --城市--
    select.city-select
      option --地区--
    select.city-select
      option --街道--

请留意:所有选择框都要有 city-select class,并都包含于 class='city-group' 的 DOM 元素之下。

选择后的值为国家地区编码,如深圳市的为 440300,可通过调用 ChinaCity.get('440300') 将编码转化为城市名称。

React 用户 react-china-city

如果你使用 React 和 webpack/browserify 可以直接使用 npm i react-china-city --save 来进行前端接入。

更新

  • 0.0.5 更新省市区数据到最新的国标,支持街道

贡献

git clone git@github.com:saberma/china_city.git
cd china_city
rake appraisal:install
cd spec/dummy
rails server
open http://localhost:3000/china_city

测试

brew install phantomjs    # http://git.io/vRJ1M
rvm use 2.1               # Fixed: NoMethodError: undefined method `using' for GB2260::Division:Class
rake appraisal:install
rake appraisal:rails4 spec

类似项目

You can’t perform that action at this time.