概述

什么是插件,插件就是即插即用叫插件,很少的配置,很少的代码就可以用都项目里,之所以做这个插件,是因为做了一个省市区的联动,其他项目如果要用怎么办,难道在ctrl+c,ctrl+v?那样做太low,做个插件吧,于是乎就开始了Jquery插件制作之旅。

使用效果

获取使用

代码开源,已经托管在git上,地址如下,希望大家赏脸给个星

https://gitee.com/jangojing/JqueryCitySelectPlug

1.引入js、css和移动端的meta

引入jquery版本无所谓,demo里的版本较老,就懒得换了,其次引入插件对应的js和css

加入移动端的meta是移动端开发的前提

        <script src="Scripts/jquery-1.4.1.min.js"></script>
<script src="Scripts/CitySelect/citySelectPlug.js"></script>
<link rel="stylesheet" href="Scripts/CitySelect/citySelectPlug.css" type="text/css" />
     <meta name="viewport" content="initial-scale=1, width=device-width, maximum-scale=1, user-scalable=no" />

2.编辑html绑定jquery事件

html里放入一个input,用jquery绑定一个jquery事件

	<form action="submit.aspx" method="GET">
请选择省市区:<br />
<input type="text" name="citySelect" value="" id="citySelect" />
<input type="submit" value="提交" />
</form>
<script>
$().ready(function () {
$("#citySelect").citySelectPlug({ ajaxUrl: 'GetArea.ashx' });
});
</script>

3. 处理ajax请求

注意到这里有个ajaxUrl,这个是配置你项目的ajax请求的路径的。既然要做联动,肯定需要ajax请求,通过当前选择的id去找下一级的id。

ajax请求会调用对应的地址,携带id为参数,id就是用户点击的那个省的id或者市的id,根据这个id继续找下一级

这里ajax请求需要返回的结果是json格式的数据如下所示:

[{"ID":606,"Name":"市辖区"},{"ID":123,"Name":"高淳区"},{"ID":234,"Name":"鼓楼区"}]

包含id和name的数组。

4. 完了?  

就这样就完了? 是的,插件就是少量的配置,少量的代码,即插即用。

5. 兼容性申明

手边的设备不全,测试过的设备有iphone 6s,iphone 5s,华为P8,华为荣耀3台,一款很老的HTC,努比亚一台。

针对ios处理了输入框获得焦点自动居中的问题。

针对华为手机处理了键盘打开状态下触发屏幕可见范围高度不够导致弹出层高度只有半幅页面的问题。

自己编写的仿京东移动端的省市联动选择JQuery插件的更多相关文章

  1. React-Native牛刀小试仿京东砍啊砍砍到你手软

    React-Native牛刀小试仿京东砍啊砍砍到你手软 React-Native基础教程 *React-Native基础篇作者git *React-Native官方文档 *Demo 几个月前faceb ...

  2. div css仿京东订单流程图样式代码

    效果展示 http://hovertree.com/texiao/css/25/ 本效果适合PC,也适合移动端 手机扫描二维码查看效果: 效果图: 代码如下: <!DOCTYPE html> ...

  3. 浅谈android中只使用一个TextView实现高仿京东,淘宝各种倒计时

    今天给大家带来的是只使用一个TextView实现一个高仿京东.淘宝.唯品会等各种电商APP的活动倒计时.近期公司一直加班也没来得及时间去整理,今天难得歇息想把这个分享给大家.只求共同学习,以及自己兴许 ...

  4. 纯Swift编写的仿“随遇”应用源码

    纯Swift编写的仿“随遇”App概述 此项目是为了巩固Swift掌握而编写的,素材均来自“随遇”官方App 用Storyboard+Xib+Autolayout的方式来实现UI部分 由于项目不复杂, ...

  5. js 鼠标滚动到某屏时,加载那一屏的数据,仿京东首页楼层异步加载模式

    js用处:在做商城时,首页图片太多,严重影响首页打开速度,所以我们需要用到异步加载楼层.js名称:鼠标滚动到某屏时,加载那一屏的数据,仿京东首页楼层模式js解释:1.用于商城的楼层内容异步加载,滚动条 ...

  6. jQuery仿京东无限级菜单HoverTree

    官方网址:http://keleyi.com/jq/hovertree/ 效果图: 看了上面效果图,你或许已经明白为什么是仿京东菜单.如果还不明白,请访问http://list.jd.com/list ...

  7. iOS仿京东分类菜单之UICollectionView内容

    在上<iOS仿京东分类菜单实例实现>已经实现了大部分主体的功能,本文是针对右边集合列表进行修改扩展,使它达到分组的效果,本文涉及到的主要是UICollectionView的知识内容,左边列 ...

  8. 完美高仿精仿京东商城手机客户端android版源码

    完美高仿精仿京东商城手机客户端android版源码,是从安卓教程网那边转载过来的,这款应用源码非常不错的,也是一个非常优秀的应用源码的,希望能够帮到学习的朋友. _js_op> <igno ...

  9. 商城项目实战 | 1.1 Android 仿京东商城底部布局的选择效果 —— Selector 选择器的实现

    前言 本文为菜鸟窝作者刘婷的连载."商城项目实战"系列来聊聊仿"京东淘宝的购物商城"如何实现. 京东商城的底部布局的选择效果看上去很复杂,其实很简单,这主要是要 ...

随机推荐

  1. test for python thread

    #!/usr/bin/python # -*- coding: UTF-8 -*- import thread import time # 为线程定义一个函数 def print_time(threa ...

  2. 【原创】相对完整的一套以Jmeter作为工具的性能测试教程(接口性能测试,数据库性能测试以及服务器端性能监测)

    准备工作 jmeter3.1,为什么是3.1,因为它是要配合使用的serveragent所支持的最高版本,下载链接 https://pan.baidu.com/s/1dWu5Ym JMeterPlug ...

  3. Jetson TX2上的demo(原创)

    Jetson TX2上的demo 一.快速傅里叶-海动图 sample The CUDA samples directory is copied to the home directory on th ...

  4. Win10图片打开方式没有“Windows照片查看器”,如何找回?

    如果你是全新安装的Win10正式版,那么就会发现当在图片上点击右键时,"打开方式"菜单里熟悉的"Windows照片查看器"不见了,换成了Win10全新的&quo ...

  5. 奇怪的问题0xc000007b

    自己的程序运行debug版本正常,运行release版本main函数还未进入就弹出异常. 令我感觉很奇怪. 觉得应该就是动态库哪里有问题. 仔细检查,发现并没有缺什么动态库.也不存在版本问题. 最后我 ...

  6. SQL Server比较2table字段的差异

    由于项目前后用了2个数据库,需要统计数据库结构的变化,需要统计每个表的变化,由于人工核对挺浪费时间,就写了一点代码: 1.统计表的字段数量(查询表有多少列): select count(name)   ...

  7. 获取sap登陆用户名的中文描述

    一.业务场景: 当通过MKPF-USNAM查找ADRP-NAME_LAST时,中间缺少一个表,即USR21.否则,MKPF-USNAM不能和ADRP-PERSNUMBER直接对等. 二.解决方法: D ...

  8. Facebook发布React 16 专利条款改为MIT开源协议

    9 月 26 日,用于构建 UI 的 JavaScript 库 React 16 的最新版本上线. Facebook 最终在现有的两种 React 版本中选择了出现 bug 概率最少的一款.这次版本更 ...

  9. xBIM IFC 输出 Excel 报表

    目录 xBIM 应用与学习 (一) xBIM 应用与学习 (二) xBIM 基本的模型操作 xBIM 日志操作 XBIM 3D 墙壁案例 xBIM 格式之间转换 xBIM 使用Linq 来优化查询 x ...

  10. Using Custom Domains With IIS Express In Asp.Net Core

    IIS Express是一个Mini版的IIS,能够支持所有的Web开发任务,但是这种设计有一些缺陷,例如只能通过localhost:<port>的方式来访问我们的应用程序,看起来就有点不 ...