jQuery的Ajax初识
1. 什么是Ajax?
Ajax是“Asynchronous Javascript And XML(异步Javascript和XML)”的缩写, 是指一种创建交互式网页应用的网站开发技术。
Ajax不是一种新的编程语言, 而是一种用于创建更好、更快以及交互性更强的web应用程序的技术。
它是一套综合了多项技术的浏览器端网页开发技术。这些技术包括Javascript、 XHTML和CSS、DOM、XML和XMLHttpRequ。
Ajax可以在不重新加载整个页面的情况下, 与服务器交换数据。这种异步交互的方式, 使用户单击后, 不必刷新页面也能获取新数据。 使用Ajax, 用户可以创建接近本地桌面应用的直接、高可用、更丰富、更动态的Web用户界面。
1.1 Ajax原理
通过XTML和CSS来实现页面, 表达信息。
通过浏览器的XmlHttpRequest(Ajax引擎)对象, 来向服务器发送异步请求, 并接收服务器的响应数据, 然后用javascript来操作DOM, 实现动态局部刷新。
1.2 Ajax的优点和不足之处。
优点:
使用Ajax的最大优点, 就是能在不更新整个页面的前提下维护数据。
这使得web应用程序更为迅捷地响应用户动作, 并避免了在网络上发送那些没有改变的HTML代码信息。
1. 减轻服务器负担, 按需要获得数据。
2. 无刷新更新页面, 减少用户的实际和心理的等待时间。
3. 更好的用户体验。
4. 减轻宽带的负担。
5. 主流浏览器支持。
不足:
1. Ajax的程序必须测试针对各个浏览器的兼容性。
2. Ajax更新页面内容的时候并没有刷新整个页面, 因此, 网页的后退功能是失效的。
3. 对搜索引擎支持不好。
1.3 Ajax实现过程
第一步: Javascript监听浏览器网页事件(例如:点击, 提交, 更改等)。
第二步: 由Javascrip创建Ajax引擎对象。
第三步: 通过Ajax引擎对象发出请求。
第四步: Ajax引擎等待并且接收服务器的响应内容
第五步: Javascript再从“Ajax引擎对象”中获取响应内容, 并且通过DOM改变网页界面显示效果。
2. jQuery的load()方法
jQuery load()方法是简单但强大的AJax方法。
load() 方法从服务器加载数据, 并把返回的数据放入被选元素中。
语法:
$("selector").load(URL, data, callback);
第一种情况:
$("#btn").click(function(){
//只传一个URL, 表示在id为new-projectsd的元素加载index.html
$("#new-projects").load("./index.html")
})
第二种情况:
$("btn").click(function () {
// 只传一个URL, 导入的index.html文件含有多个传递参数, 类似于: index/html?name=yang&age=12
$("#new-projects").load("./index.html", {"name": "yang", "age":12});
});
第三种情况:
$("btn").click(function () {
// 如果加载成功,则会执行回调函数
$("#new-projects").load("./index.html", {"name": "yang", "age":12}, function () {
alert("load执行成功!");
});
});
3. jQuery的getJSON方法
jQuery的Ajax中使用getJSON()方法, 异步加载JSON格式数据。
获取服务器中的数据, 并对数据进行解析, 显示到页面中。
语法:
$,getJSON(url, [data], [callback]);
参数(url): 为请求加载json格式文件的服务器地址。
参数(data): 可选, 为请求时发送的数据。
参数(callback): 为数据请求成功后执行的函数。
$.getJSON("./data/getJSON.json", function (data) {
var str=""; //初始化保存内容变量
$.each(data, function (index, ele) {
$("ul").append("<li>"+ele.name+"</li>>")
})
})
4. jQuery的$.get()方法
语法:
$.get(URL, callback);
参数(URL): 必选, 规定请求的路径。
参数(callback): 数据请求成功后执行的函数。
作用:通过HTTP GET请求从服务器上请求数据。
$.get("./data/getJSON.json", function (data, status) {
console.log(status);
})
5. jQuery的post()方法
语法:
$.post(URL, data, callback);
参数(URL): 必选, 规定请求的路径。
参数(data): 可选, 连同请求发送的数据。
参数(callback):可选, 数据请求成功后执行的函数。
作用: 以POST方式向服务器发送数据, 服务器接收到数据之后, 进行处理, 并将处理结果返回页面。
$.post("/index", {name: "zhang"}, function (data, status) {
console.log(status);
})
jQuery的Ajax初识的更多相关文章
- jQuery之ajax实现篇
jQuery的ajax方法非常好用,这么好的东西,你想拥有一个属于自己的ajax么?接下来,我们来自己做一个简单的ajax吧. 实现功能 由于jq中的ajax方法是用了内置的deferred模块,是P ...
- 【原创经验分享】JQuery(Ajax)调用WCF服务
最近在学习这个WCF,由于刚开始学 不久,发现网上的一些WCF教程都比较简单,感觉功能跟WebService没什么特别大的区别,但是看网上的介绍,就说WCF比WebService牛逼多少多少,反正我刚 ...
- jQuery版AJAX简易封装
开发过程中,AJAX的应用应该说非常频繁,当然,jQuery的AJAX函数已经非常好用,但是小编还是稍微整理下,方便不同需求下,可以简化输入参数,下面是实例代码: $(function(){ /** ...
- JS原生ajax与Jquery插件ajax深入学习
序言: 近来随着项目的上线实施,稍微有点空闲,闲暇之时偶然发现之前写的关于javascript原生xmlHttpRequest ajax方法以及后来jquery插件ajax方法,于是就行了一些总结,因 ...
- 重写jquery的ajax方法
//首先备份下jquery的ajax方法 var _ajax=$.ajax; //重写jquery的ajax方法 $.ajax=function(opt){ //备份opt中error和success ...
- Jquery通过Ajax方式来提交Form表单
今天刚好看到Jquery的ajax提交数据到服务器的方法,原文是: 保存数据到服务器,成功时显示信息. jQuery 代码: $.ajax({ type: "POST", url: ...
- 对jquery的ajax进行二次封装以及ajax缓存代理组件:AjaxCache
虽然jquery的较新的api已经很好用了, 但是在实际工作还是有做二次封装的必要,好处有:1,二次封装后的API更加简洁,更符合个人的使用习惯:2,可以对ajax操作做一些统一处理,比如追加随机数或 ...
- jquery管理ajax异步-deferred对象
今天跟大家分享一个jquery中的对象-deferred.其实早在jquery1.5.0版本中就已经引入这个对象了.不过可能在实际开发过程中用到的并不多,所以没有太在意. 这里先不说deferred的 ...
- Struts2 使用jQuery实现Ajax
在jQuery中将Ajax相关的操作进行封装,使用时只需在合适的地方调用Ajax相关的方法即可,相比而言,使用jQuery实现Ajax更加简洁,方便 1.$.Ajax()可以通过发送Http请求加载远 ...
随机推荐
- Linux文件属性与权限
一.在Linux里面,任何一个文件都具有“User,Group,Others”(用户.用户组.其他人)三种身份 二.用户组最有用的功能之一,就是当你在团队开发资源的时候,且每个账号都可以有多个用户组的 ...
- 概念:详细讲解url和路由概念
例如:一个网址为 http://www.abc.com/aa 定义:/aa = bb/cc/dd 那么:http://www.abc.com/aa就是一个url,那么我们可以得出:网址=url 而当我 ...
- session的MaxInactiveInterval=0在tomcat6和tomcat8不同表现
在tomcat6中调用 request.getSession().setMaxInactiveInterval(0); 这个session会立即过期. 而在tomcat8中,同样的调用,会导致这个se ...
- graphql 项目搭建(二)
一.Express基本框架 1.新建一个文件夹gql-server vscode 打开项目,在终端下输入yarn init -y 生成package.json 包(如果没安装yarn ,npm也一样, ...
- 如何在windows下运行Linux命令?(转载)
在windows上可以运行或使用linux下面的命令吗?可以,小编今天就来分享怎么样让Windows支持Linux命令,做这些安装和设置后,就可以非常方便的在windows系统中使用linux下面的命 ...
- DEM精度评价自动化系统的成果展示
程序员:左正康 完成时间:2013/12/3 系统开发背景: 原始的DEM精度评价方法:采用ArcGIS结合Excel的方式完成DEM的精度评价.具体操作是:利用ArcGIS工具箱中的创建TIN,T ...
- 温故而知新:Asp.Net中如何正确使用Session
原文链接作者:菩提树下的杨过出处:http://yjmyzz.cnblogs.com Asp.Net中的Session要比Asp中的Session灵活和强大很多,同时也复杂很多:看到有一些Asp.Ne ...
- rsync安装配置实时同步
一.简介 1.认识 Rsync(remote synchronize)是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件.Rsync使用所谓的“Rsync算法”来使本地和远 程两个主 ...
- telegram汉化和代理
telegram在Ubuntu18.04的应用商店中可以一键下载. 1.注册:用国内手机号即可,就是验证码可能很慢. 2.汉化:关注zh-CN 频道,在点击其中的安装链接即可. 3.代理: 如果你使用 ...
- 2017.11.14 C语言---指针的学习
第八章 善于利用指针 (1)指针是什么 1.内存区每一个字节都有一个编号,这就是"地址".地址形象化的被称为"指针".它能通过以它为地址的内存单元.地址指向(* ...