(与jQuery靠近乎)-06-jq中的Ajax参数/two

3 篇文章 0 订阅
3 篇文章 0 订阅

(与jQuery靠近乎)-06-jq中的Ajax简介+优缺+论述+实例/one_风尚云网-CSDN博客jQuery中的Ajax学习总结https://blog.csdn.net/zsx0806/article/details/121385551?spm=1001.2014.3001.5502

$.ajax()

 

$.ajax()是所有 ajax 方法中最底层的方法,所有其他方法都是基于$.ajax()方法的封装。这个方法只有一个参数,传递一个各个功能键值对的对象。


参数类型说明
urlString发送请求的地址
typeString请求方式:POST 或 GET,默认 GET
timeoutNumber设置请求超时的时间(毫秒)
dataObject 或String发送到服务器的数据,键值对字符串或对象
dataTypeString返回的数据类型,比如 html、xml、json 等
beforeSendFunction发送请求前可修改 XMLHttpRequest 对象的函数
completeFunction请求完成后调用的回调函数
successFunction请求成功后调用的回调函数
errorFunction请求失败时调用的回调函数
globalBoolean默认为 true,表示是否触发全局 Ajax
cacheBoolean设置浏览器缓存响应, 默认为 true。 如果 dataType类型为 script 或 jsonp 则为 false。
ContentDOM指定某个元素为与这个请求相关的所有回调函数的上下文。
contentTypeString指 定 请 求 内 容 的 类 型 。 默 认 为application/x-www-form-urlencoded。
asyncBoolean默认为Boolean 是否异步处理。默认为 true,false 为同步处理
processDatatrue,数据被处理为 URL 编码格式。如果为 false,则阻止将传入的数据处理为 URL 编码的格式。
DataFilterFunction用来筛选响应数据的回调函数。
IfModifiedBoolean默认为 false,不进行头检测。如果为 true,进行头检测,当相应内容与上次请求改变时,请求被认为是成功的。
JsonpString指定一个查询参数名称来覆盖默认的 jsonp 回调参数名 callback。
usernameString在 HTTP 认证请求中使用的用户名
passwordString在 HTTP 认证请求中使用的密码
scriptCharsetString当远程和本地内容使用不同的字符集时,用来设置 script 和 jsonp 请求所使用的字符集。
xhrFunction用来提供 XHR 实例自定义实现的回调函数
traditionalBoolean默认为 false,不使用传统风格的参数序列化。

回调函数

如果要处理 $.ajax() 得到的数据,则需要使用回调函数:beforeSend、error、dataFilter、success、complete。

beforeSend

在发送请求之前调用,并且传入一个 XMLHttpRequest 作为参数。

error

在请求出错时调用。传入 XMLHttpRequest 对象,描述错误类型的字符串以及一个异常对象(如果有的话)

dataFilter

在请求成功之后调用。传入返回的数据以及 "dataType" 参数的值。并且必须返回新的数据(可能是处理过的)传递给 success 回调函数。

success

当请求之后调用。传入返回后的数据,以及包含成功代码的字符串。

complete

当请求完成之后调用这个函数,无论成功或失败。传入 XMLHttpRequest 对象,以及一个包含成功或错误代码的字符串。

 


数据类型

$.ajax() 函数依赖服务器提供的信息来处理返回的数据。如果服务器报告说返回的数据是 XML,那么返回的结果就可以用普通的 XML 方法或者 jQuery 的选择器来遍历。如果见得到其他类型,比如 HTML,则数据就以文本形式来对待。

通过 dataType 选项还可以指定其他不同数据处理方式。除了单纯的 XML,还可以指定 html、json、jsonp、script 或者 text。

其中,text 和 xml 类型返回的数据不会经过处理。数据仅仅简单的将 XMLHttpRequest 的 responseText 或 responseHTML 属性传递给 success 回调函数。

注意:我们必须确保网页服务器报告的 MIME 类型与我们选择的 dataType 所匹配。比如说,XML的话,服务器端就必须声明 text/xml 或者 application/xml 来获得一致的结果。


 

如果指定为 html 类型,任何内嵌的 JavaScript 都会在 HTML 作为一个字符串返回之前执行。类似地,指定 script 类型的话,也会先执行服务器端生成 JavaScript,然后再把脚本作为一个文本数据返回。


如果指定为 json 类型,则会把获取到的数据作为一个 JavaScript 对象来解析,并且把构建好的对象作为结果返回。为了实现这个目的,它首先尝试使用 JSON.parse()。如果浏览器不支持,则使用一个函数来构建。


JSON 数据是一种能很方便通过 JavaScript 解析的结构化数据。如果获取的数据文件存放在远程服务器上(域名不同,也就是跨域获取数据),则需要使用 jsonp 类型。使用这种类型的话,会创建一个查询字符串参数 callback=? ,这个参数会加在请求的 URL 后面。服务器端应当在 JSON 数据前加上回调函数名,以便完成一个有效的 JSONP 请求。如果要指定回调函数的参数名来取代默认的 callback,可以通过设置 $.ajax() 的 jsonp 参数。

注意:JSONP 是 JSON 格式的扩展。它要求一些服务器端的代码来检测并处理查询字符串参数。


如果指定了 script 或者 jsonp 类型,那么当从服务器接收到数据时,实际上是用了 <script> 标签而不是 XMLHttpRequest 对象。这种情况下,$.ajax() 不再返回一个 XMLHttpRequest 对象,并且也不会传递事件处理函数,比如 beforeSend。


今日份分享到这里结束了


风尚云网_CSDN博客




我还是风尚,一个有梦想的咸鱼程序员!让我们一起努力,共创明天的辉煌!喜欢就给个小关注啊,



关注风尚不迷路!

记得一键三连,禁止白嫖

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

风尚云网

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值