jQuery ajax 实例讲解
- [$.get() 定义和用法]
get()方法通过远程HTTP GET请求载入信息。这是一个简单的GET请求功能以取代$.ajax。请求成功是可调用回调函数。如果需要在出错时执行函数,请使用$.ajax。
语法:$(selector).get(url,data,success(response,status,xhr),dataType)
参数 | 描述 |
---|---|
url | 必须。规定将请求发送到哪个URL。 |
data | 可选。规定连同请求发送到服务器的数据。 |
success(response,status,xhr) | 可选。规定当请求成功时运行的函数。额外的参数: response - 包含来自请求的结果数据 |
dataType | 可选。规定预计的服务器相应的数据类型。默认的,jQuery将智能判断。可能的类型:xml,html,text,script,json,jsonp |
*参照例子:demo(hello)中的get方法。
- [$.post()定义和用法]
同get方法
- [.load()方法]
load()方法是jQuery中最常用也是最简单的ajax方法,能载入远程的html代码并插入到DOM中。
语法:load(url,[date],[callback])
参数名 | 参数类型 | 参数说明 |
---|---|---|
url | String | 请求的url地址 |
data(可选) | Object | 发送到服务器的数据key/value |
callback (可选) | function | 无论请求是否成功,执行回调函数 |
*参照例子demo(hello)中的load方法。
注意点:
$.ajax()这个是jQuery 的底层 AJAX 实现。简单易用的高层实现是 $.get, $.post 。如果需要在执行出错时执行函数,使用$.ajax()。
JQuery中的回调对象
回调对象(Callbacks object)模块是JQuery中的一个很基础的模块,很多其他的模块(比如Deferred、Ajax等)都依赖于Callbacks模块的实现。
基本配置
Callbacks提供如下四个配置供开发者使用:
- once 保证所有回调函数只能执行一次。
- memory 记录上一次调用回调函数的参数值。如果在调用回调函数之后又通过add新回调函数,那么会立即使用memory记录的值调用新增的回调函数。
- unique 保证每个回调函数只能被添加一次,即回调函数列表中每个函数都唯一。
- stopOnFalse 如果一个回调函数返回false,则终止调用其他剩余会回调函数。开发者可以通过以上配置的字符串组合(以空格分隔)初始化回调对象。
var callbacks = $.Callbacks('unique memory'); //回调函数列表中每个函数必须唯一,且要记录上一次调用的参数值
方法list一览
名称 | 功能 |
---|---|
callbacks.add() | 向回调函数列表中增加一个回调函数或回调函数集合 |
callbacks.remove() | 从回调函数列表中删除一个回调函数或回调函数的集合。 |
callbacks.disable() | 禁用改回调函数列表,不在执行任何动作。 |
callbacks.disabled() | 回调函数列表是否被禁用。 |
callbacks.empty() | 清空回调函数列表。 |
callbacks.has() | 如果带有参数,则表示该参数是否在回调函数列表中,否则表示回调函数列表是否为空。 |
callback.fire() | 指定参数调用列表中所有的回调函数。 |
callback.fireWith() | 指定上下文和参数调用列表中所有的回调函数。 |
callback.fired() | 回调函数是否被执行过。 |
callback.lock() | 锁定回调函数列表,使其保持当前的状态不变。 |
callback.locked() | 回调函数列表是否被锁定。 |
相关链接:
demo以及资料访问地址:vss上面 \99.Study\Ajax and callbacks.rar