jquery+ajax实现省市区三级联动效果简单示例


Posted in Javascript onJanuary 04, 2017

本文实例讲述了jquery+ajax实现省市区三级联动效果。分享给大家供大家参考,具体如下:

一直想学习下Ajax,没时间,汗,这借口太牵强了.下了点教程在手机里,翻了好几遍了,没实战一次.

最近的项目里需要Ajax实现效果,就下了个jquery,然后找了个实例,学习了一下,幡然醒悟,NND,jquery果然强大的一塌糊涂,实现Ajax简直就是不费吹灰之力.下面把学习过程跟大家分享下,虽然还没有搞清楚jquery ajax的底层相关.不管了.我们不需要去发明轮子.呵呵.

先上代码,是一个省市区三级联动的ajax效果:

<select name='sheng' onchange='JavaScript:areas_load(this.value);' class="selectclass">
<option value='0'>请选择省份</option><option value='13'>A - 安徽</option>
<option value='33'>A - 澳门</option><option value='1'>B - 北京</option>
<option value='4'>C - 重庆</option><option value='14'>F - 福建</option>
<option value='21'>G - 广西</option><option value='20'>G - 广东</option>
<option value='28'>G - 甘肃</option><option value='24'>G - 贵州</option>
<option value='22'>H - 海南</option><option value='18'>H - 湖北</option>
<option value='17'>H - 河南</option><option value='19'>H - 湖南</option>
<option value='5'>H - 河北</option><option value='10'>H - 黑龙江</option>
<option value='15'>J - 江西</option><option value='11'>J - 江苏</option>
<option value='9'>J - 吉林</option><option value='8'>L - 辽宁</option>
<option value='30'>N - 宁夏</option><option value='7'>N - 内蒙古</option>
<option value='29'>Q - 青海</option><option value='6'>S - 山西</option>
<option value='23'>S - 四川</option><option value='2'>S - 上海</option>
<option value='16'>S - 山东</option><option value='27'>S - 陕西</option>
<option value='3'>T - 天津</option><option value='34'>T - 台湾</option>
<option value='26'>X - 西藏</option><option value='31'>X - 新疆</option>
<option value='32'>X - 香港</option><option value='25'>Y - 云南</option>
<option value='12'>Z - 浙江</option>
</select>
<SELECT NAME="shi" id="shi" class="selectclass" onchange="JavaScript:area_load(this.value);">
<option value=''>请选择地级市</option>
</SELECT>
<SELECT NAME="xian" id="xian" class="selectclass">
<option value=''>请选择县级市</option>
</SELECT>
<script language="javascript">
function areas_load(id)
{
$.get("/ajax/areaajax.php", { areaid: id },
function(data){
$('#shi').html('<option value="">请选择地级市</option>');
$('#xian').html('<option value="">请选择县级市</option>');
if(id!=0) $('#shi').append(data);
 });
}
function area_load(id)
{
$.get("/ajax/areaajax.php", { areaid: id },
function(data){
$('#xian').html('<option value="">请选择县级市</option>');
if(id!=0) $('#xian').append(data);
 });
}
</script>

代码有些拙劣,大家见谅,下面说下这段代码的工作流程.

首先是页面中加载了jquery的js库文件,这个不用多说吧.他是ajax效果赖以实现的必不可少的环节.

当下拉框被选中,触发了onchange事件,该事件请求了一个函数areas_load(),如下:

function areas_load(id)
{
$.get("/ajax/areaajax.php", { areaid: id },
function(data){
$('#shi').html('<option value="">请选择地级市</option>');
$('#xian').html('<option value="">请选择县级市</option>');
if(id!=0) $('#shi').append(data);
 });
}

该函数解释如下:

当函数触发时,以get方式传递参数areaid给指定的url地址,就变成了 /ajax/areaajax.php?areaid=x 这样的地址,然后在这个php文件里接受areaid的值,输出指定的代码,function(data) 这个就是php文件里返回的全部代码,当然是在成功完成的状态下.由于jquery封装了这一过程,所以在这里首先起来是非常简便快捷的.再使用$('#shi').append(data) 赋值给指定的id.这样一个ajax的完整过程就实现了.

我只是想把最精髓的地方说给大家,让像我一样的新手不在畏惧ajax这个事物,不在局限于一大堆的教材.说的再多不如一试,想学习ajax的马上就可以开始行动起来啦.

在会用的基础上,再去研究底层实现,这样更有底气,更有耐心和信心.

希望本文所述对大家jQuery程序设计有所帮助。

Javascript 相关文章推荐
JavaScript中的onerror事件概述及使用
Apr 01 Javascript
页面载入结束自动调用js函数示例
Sep 23 Javascript
css3元素简单的闪烁效果实现(html5 jquery)
Dec 28 Javascript
js网页实时倒计时精确到秒级
Feb 10 Javascript
学习javascript面向对象 实例讲解面向对象选项卡
Jan 04 Javascript
js replace(a,b)之替换字符串中所有指定字符的方法
Aug 17 Javascript
jQuery通过改变input的type属性实现密码显示隐藏切换功能
Feb 08 Javascript
JavaScript基本类型值-Number类型
Feb 24 Javascript
JavaScript数据类型的存储方法详解
Aug 25 Javascript
vue实现未登录跳转到登录页面的方法
Jul 17 Javascript
vue项目设置scrollTop不起作用(总结)
Dec 21 Javascript
如何获取vue单文件自身源码路径
May 06 Javascript
基于jQuery实现火焰灯效果导航菜单
Jan 04 #Javascript
深入理解Javascript中的valueOf与toString
Jan 04 #Javascript
使用UrlConnection实现后台模拟http请求的简单实例
Jan 04 #Javascript
js实现定时进度条完成后切换图片
Jan 04 #Javascript
12306 刷票脚本及稳固刷票脚本(防挂)
Jan 04 #Javascript
深入理解JavaScript中的预解析
Jan 04 #Javascript
jQuery操作json常用方法示例
Jan 04 #Javascript
You might like
ajax在joomla中的原生态应用代码
2012/07/19 PHP
php实现的Curl封装类Curl.class.php用法实例分析
2015/09/25 PHP
php事务回滚简单实现方法示例
2017/03/28 PHP
PHP的mysqli_ssl_set()函数讲解
2019/01/23 PHP
解决laravel资源加载路径设置的问题
2019/10/14 PHP
javascript 表单规则集合对象
2009/07/21 Javascript
WEB页子窗口(showModalDialog和showModelessDialog)使用说明
2009/10/25 Javascript
js实现仿百度汽车频道选择汽车图片展示实例
2015/05/06 Javascript
jquery实现的判断倒计时是否结束代码
2016/02/05 Javascript
JS获取和修改元素样式的实例代码
2016/08/06 Javascript
JS实现图片上传预览功能
2016/11/21 Javascript
微信小程使用swiper组件实现图片轮播切换显示功能【附源码下载】
2017/12/12 Javascript
AngularJS监听ng-repeat渲染完成的两种方法
2018/01/16 Javascript
浅谈vue.js导入css库(elementUi)的方法
2018/03/09 Javascript
Angular路由ui-router配置详解
2018/08/01 Javascript
基于webpack4.X从零搭建React脚手架的方法步骤
2018/12/23 Javascript
Vue  webpack 项目自动打包压缩成zip文件的方法
2019/07/24 Javascript
使用Vue 自定义文件选择器组件的实例代码
2020/03/04 Javascript
把项目从Python2.x移植到Python3.x的经验总结
2015/04/20 Python
Python使用defaultdict读取文件各列的方法
2017/05/11 Python
python中的break、continue、exit()、pass全面解析
2017/08/05 Python
python复制文件到指定目录的实例
2018/04/27 Python
python 读取视频,处理后,实时计算帧数fps的方法
2018/07/10 Python
Django中使用第三方登录的示例代码
2018/08/20 Python
selenium+python 对输入框的输入处理方法
2018/10/11 Python
pyQT5 实现窗体之间传值的示例
2019/06/20 Python
python验证码图片处理(二值化)
2019/11/01 Python
Html5应用程序缓存(Cache manifest)
2018/06/04 HTML / CSS
澳大利亚儿童精品仓库:Goo & Co.
2019/06/20 全球购物
百度软件工程师职位
2013/02/14 面试题
《高尔基和他的儿子》教学反思
2014/04/09 职场文书
防沙治沙典型材料
2014/05/07 职场文书
2014组织生活会方案
2014/05/19 职场文书
绿色小区申报材料
2014/08/22 职场文书
纪律教育学习心得体会
2014/09/02 职场文书
2014年预算员工作总结
2014/12/05 职场文书