`
化蝶自在飞
  • 浏览: 2333582 次
  • 性别: Icon_minigender_2
  • 来自: 武汉
社区版块
存档分类
最新评论

jquery ajax原来Ajax如此简单_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的马上就可以开始行动起来啦.

在会用的基础上,再去研究底层实现,这样更有底气,更有耐心和信心.
2
0
分享到:
评论
6 楼 化蝶自在飞 2010-10-20  
zachary.guo 写道
化蝶自在飞 写道
如果用json的话,在客户端js是不是还要组装呢?json我没了解过哦.

如果这样的话,赶紧抽时间问问谷老师,多了解下 json 的知识,对你有好处的。


经过学习了解到php是可以直接返回json数据的哦.php json_encode()函数.然后js可以用jQuery.parseJSON(data)解析.
5 楼 zachary.guo 2010-05-05  
化蝶自在飞 写道
如果用json的话,在客户端js是不是还要组装呢?json我没了解过哦.

如果这样的话,赶紧抽时间问问谷老师,多了解下 json 的知识,对你有好处的。
4 楼 化蝶自在飞 2010-05-05  
仅仅
zachary.guo 写道
呵呵,了解 ajax 底层请求的若干个状态变化,可以在任意一个状态改变时进行相应的回调处理。底层的细节还是要抽空看看,学习嘛,核心的学会了,就不用局限 jquery 这一个框架了。

同时,看了你的代码:
if(id!=0) {
  $('#shi').append(data);
}

我想,你返回的 data 其实不是真正意义上的 data(数据),而是穿了衣服的 data(view + data),即你的 data 可能是这样的 <option>...</option><option>...</option><option>...</option>。

其实呢,作为 ajax 的数据而言,xml 是很少用的了,使用 json 格式更为方便,更为简洁。它代表的仅仅是数据而已。这个时候,你拿到数据后,可以随意展示了。假设我猜的没错的话(你的数据是 <option>...</option),不好意思,你只能用 select 形式来展示了。若是真正的数据,页面我想用啥就用啥展示了,比如,就直接用 input 呀,用 select 呀都行。


嗯嗯,高人,确实是的哦.
如果用json的话,在客户端js是不是还要组装呢?json我没了解过哦.
3 楼 zachary.guo 2010-05-05  
呵呵,了解 ajax 底层请求的若干个状态变化,可以在任意一个状态改变时进行相应的回调处理。底层的细节还是要抽空看看,学习嘛,核心的学会了,就不用局限 jquery 这一个框架了。

同时,看了你的代码:
if(id!=0) {
  $('#shi').append(data);
}

我想,你返回的 data 其实不是真正意义上的 data(数据),而是穿了衣服的 data(view + data),即你的 data 可能是这样的 <option>...</option><option>...</option><option>...</option>。

其实呢,作为 ajax 的数据而言,xml 是很少用的了,使用 json 格式更为方便,更为简洁。它代表的仅仅是数据而已。这个时候,你拿到数据后,可以随意展示了。假设我猜的没错的话(你的数据是 <option>...</option),不好意思,你只能用 select 形式来展示了。若是真正的数据,页面我想用啥就用啥展示了,比如,就直接用 input 呀,用 select 呀都行。
2 楼 化蝶自在飞 2010-05-03  
chemzqm 写道
没有后台代码

后台代码就不需要了吧.areaid带个参数过去,查询出结果来后直接 echo 就ok了.
1 楼 chemzqm 2010-05-03  
没有后台代码

相关推荐

    Jquery Ajax分页(有实例)

    本篇文章将深入探讨jQuery AJAX分页的原理与实践,通过具体的实例来展示如何实现炫酷的分页功能。 首先,理解jQuery AJAX的核心概念。AJAX允许我们在不刷新整个页面的情况下,与服务器交换数据并更新部分网页内容。...

    asp+jquery ajax实例源码,添加,删除,修改,分页

    综上所述,这个"asp+jquery ajax实例源码"展示了如何利用ASP作为服务器端语言处理数据,结合jQuery的AJAX功能,实现无刷新的交互体验,优化用户在添加、删除、修改和分页操作中的浏览感受。通过学习和理解这个实例,...

    JqueryAjax简单实例

    在这个"JqueryAjax简单实例"中,我们主要关注如何在Visual Studio 2005 C#环境下利用jQuery实现AJAX的功能。首先,我们需要确保项目中已经引入了jQuery库。这通常通过在HTML头部添加jQuery库的CDN链接或者将jQuery....

    jQuery Ajax 实例 全解析

    jQuery Ajax 实例 全解析; jQuery Ajax 实例 全解析;

    jqueryAjax_无刷新调用另一页实例

    "jqueryAjax_无刷新调用另一页实例"这个标题意味着我们将探讨如何利用jQuery的AJAX功能实现页面的动态加载。 首先,jQuery是一个轻量级的JavaScript库,它简化了HTML文档遍历、事件处理、动画设计以及AJAX交互。...

    jQuery_Ajax_实例_全解析

    在本文中,我们将深入探讨jQuery的Ajax功能,特别是通过`jQuery.get()`和`jQuery.post()`这两个简单方法以及核心的`jQuery.ajax()`方法。这些方法使得与服务器的异步通信变得更加容易。 首先,`jQuery.load()`方法...

    JS使用AjAX实例,JQUERY使用AJAX实例

    **JS使用AJAX实例** AJAX(Asynchronous JavaScript and XML)是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。在JavaScript中,我们通常使用`XMLHttpRequest`对象或者jQuery库来实现AJAX请求。 1...

    jQuery_Ajax_实例_全解析(原作者版)

    ### jQuery Ajax 核心技术全解析 #### 一、引言 随着Web 2.0时代的到来,Ajax 技术因其能够实现网页的局部刷新、提高用户体验等特性而备受推崇。jQuery作为一款优秀的轻量级JavaScript库,极大地简化了Ajax的操作...

    Asp.Net MVC之jQuery与AJAX操作实例

    本实例将深入探讨如何在Asp.Net MVC项目中应用jQuery与AJAX。 一、jQuery简介 jQuery是一个轻量级的JavaScript库,它简化了DOM操作、事件处理、动画设计以及Ajax交互。在Asp.Net MVC项目中,jQuery可以帮助开发者更...

    jquery ajax实例点击按钮触发Ajax loading

    在本实例中,我们将探讨如何利用jQuery的AJAX功能,通过点击按钮来触发一个加载动画(通常表现为一个"loading"图标或指示器),以提升用户体验,表明后台数据正在处理中。 首先,确保在项目中引入了jQuery库。你...

    jquery-ajax实例

    总结一下,这个"jQuery-AJAX实例"涵盖了以下几个关键知识点: 1. jQuery的$.ajax()方法,用于发起Ajax请求。 2. JSON数据格式的使用,包括Java Bean到JSON的转化。 3. jQuery如何解析服务器返回的JSON数据,并更新...

    ajax与jquery实现的简单验证实例

    这个“ajax与jquery实现的简单验证实例”着重于如何利用这两种技术进行前端数据验证,提高用户体验,减少不必要的服务器交互。在这个实例中,我们将探讨Ajax的核心概念,jQuery库的优势,以及它们如何结合实现表单...

    简单的jquery ajax实例,简单明了特别实用

    jQuery是一个强大的JavaScript库,它封装了AJAX操作,使得使用AJAX更加简单和直观。本实例将深入讲解jQuery中的AJAX应用。 ### 一、jQuery AJAX基础 1. **$.ajax()函数** jQuery的核心AJAX方法是`$.ajax()`,它...

    C#.net下jquery ajax实例及教程

    总的来说,这个C#.NET下的jQuery AJAX实例和教程将涵盖这些主题,并提供实际的代码示例和可运行的源码,帮助开发者更好地理解和应用AJAX技术。通过学习,你将能够构建出高效、用户友好的Web应用。文档`Jquery.doc`...

    使用jQuery ajax提交表单代码

    在Web开发中,jQuery是一个非常流行的JavaScript库,它极大地简化了DOM操作、事件处理和Ajax交互等任务。本文将深入探讨如何使用jQuery的ajax方法来提交表单,从而实现异步数据交换,提高用户体验。 首先,jQuery的...

    一个完整的jquery+ajax传送请求的实例

    本文将深入探讨一个完整的jQuery+AJAX传输请求的实例,旨在帮助开发者理解如何有效地使用这两种技术实现异步数据通信。 首先,jQuery是一个强大的JavaScript库,它为DOM操作、事件处理、动画效果和Ajax交互提供了...

    AJAX_jQuery_实例

    本实例将深入探讨AJAX与jQuery的使用,帮助你更好地理解和应用这些技术。 首先,AJAX的核心在于创建XMLHttpRequest对象,它是浏览器提供的一个内置对象,用于在后台与服务器进行通信。通过这个对象,我们可以发送...

    php Jquery ajax 登陆

    在本文中,我们将深入探讨如何使用PHP、jQuery和AJAX实现...通过这个实例,你可以了解如何结合PHP、jQuery和AJAX构建一个基本的登录功能。随着技能的提升,你可以进一步优化这个系统,添加更多的安全性和用户体验改进。

    jquery ajax用json传值实例asp.net

    在jQuery库的支持下,使用AJAX变得更加简单。它提供了$.ajax()函数,用于发起HTTP请求,获取或发送数据。 1. **JSON(JavaScript Object Notation)**:JSON是一种轻量级的数据交换格式,易于人阅读和编写,同时也...

Global site tag (gtag.js) - Google Analytics