javascript代码实例教程-jquery中的ajax封装

发布时间:2019-01-02 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了javascript代码实例教程-jquery中的ajax封装脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
小宝典致力于为广大程序猿(媛)提供高品质的代码服务,请大家多多光顾小站,小宝典在此谢过。

一、为何封装:

1、传统的ajax是通过XMLHttPRequest对象向服务器提交希望提交的数据,即按需发送;

2、三点不足。

ajax不足:浏览器对XMLHttpRequest对象的支持度不足;兼容问题;

(通过拿到xmlhttprequest对象我们就可以看出兼容问题)

破坏了浏览器前进、“后退”按钮的正常功能;

对搜索引擎支持不足:

通常搜索引擎都是通过爬虫程序来对互联网上的数据进行搜索整理的,但是爬虫程序不能理解那些奇怪的javascript代码和因此引起的页面变化。

开发和调试工具的缺乏。

二、jquery对ajax的三层封装

1、jquery对ajax进行了封装

在jquery中$.ajax()方法属于最底层的方法,

第二层是load()、$.get()/$.post()方法,

第三层是$.getScript()和$getJSON()方法。

2、第二层

1)、load()方法

说明:该方法是jQuery中最简单和最常用的Ajax方法,能载入远程的html代码并插入到DOM

结构:load(url,data,callback);

参数说明:

url:String类型,表示请求html页面的统一定位器地址;要载入的远程url地址

data:Object类型,发送至服务器的key/value数据;

callback:Function类型,请求完成后的回调函数,无论请求成功或失败。

举例一:加载load.html内容

jquery中的ajax封装

举例二:筛选载入html文档

结构:$("#restext").load("test.html .para");(url与选择器之间有一个空格)

2)、$.get()方法

说明:load()方法常用来从web服务器上获取静态的数据文件。在项目中,如果需要传递一些参数给服务器中的页面,就可以使用$get()和$post()方法。这两个方法都是jquery中的全局函数

结构:$.get()(url,data,callback,tyPE);

参数说明:其他如上,type表示服务器端返回内容的格式,包括xml,html,json,等

举例:

$("#send").click(function(){ $.get("get1.php",{/一个json片段},回调函数); });

服务器返回的数据格式有多种:html片段、XML文档json文件

$.post()方法

结构和$.get()方法相同,不过有区别,就是一些传递数据的规则不同。

3、第三层

$.getScript()方法和$.getJson()方法

1)、$.getScript()方法

说明:有时候页面初次加载时就取得全部的javascript文件是没有必要的,虽然也有一些解决方法,但是都不理想,为此,jquery提供了$.getScript()方法来直接加载.js文件。

举例:

$("#send").click(function(){ $.getScript("test.js"); });

2)、$.getJson()方法

说明:加载JSON文件,和$.getScript()方法的用法相同。

4、最底层$.ajax()的使用

说明:该方法只有一个参数,但是这个对象里面包括了该方法所需要的请求设置以及回调函数等信息,参数以key/value的形式存在,所有参数都是可选

常用参数:

url:要求为String类型的参数,(默认为当前页地址)发送请求的地址。

type:要求为String类型的参数,请求方式(post或get)默认为get。注意其他http请求方法,例如put和delete也可以使用,但 仅部分浏览器支持。

timeout:要求为Number类型的参数,设置请求超时时间(毫秒)。

此设置将覆盖$.ajaxSETUP()方法的全局设置。

data:要求为Object或String类型的参数,发送到服务器的数据。如果已经不是字符串,将自动转换为字符串格式。get请求中将附加在url后。止这种自动转换,可以查看proceSSData选项。对象必须为key/value格式,例如{foo1:"bar1",foo2:"bar2"}转换为&foo1=bar1&foo2=bar2。如果是数组,JQuery将自动为不同值对应同一个名称。

例如 {foo:["bar1","bar2"]}转换为&foo=bar1&foo=bar2。

dataType:要求为String类型的参数,预期服务器返回的数据类型。

返回的类型有:json、xml、text、jsonp、script等;

complete:要求为Function类型的参数,请求完成后调用的回调函数(请求成功或失败时均调用)。

觉得可用,就经常来吧! 脚本宝典 欢迎评论哦! js脚本,巧夺天工,精雕玉琢。小宝典献丑了!

脚本宝典总结

以上是脚本宝典为你收集整理的javascript代码实例教程-jquery中的ajax封装全部内容,希望文章能够帮你解决javascript代码实例教程-jquery中的ajax封装所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。