jquery事件参数-使用jqueryajax技术与服务器数据交互的三种方式

2023-09-01 0 8,549 百度已收录

Ajax是Web的一项伟大发明,它增强了用户体验,允许用户无需刷新页面即可获取服务器端数据。 而原生ajax就特别麻烦,因为异步是浏览器调用XMLHttpRequest的API,而每个浏览器调用XMLHttpRequest的方法都不一样,所以使用jquery向服务器请求数据就成了主流。

Ajax异步传输极大提升用户体验

jquery有3个方法与服务器交互:$.get、$.post、$.ajax

两者有何区别?

$.get 和 $.post 是 $.ajax 的封装。 简单来说,如果你的服务器只是请求服务器,不需要任何页面等待或者客户端网络不可用时提醒等高级操作,那么你可以直接使用$.get和$.post。 两者唯一的区别是,如果服务器需要get请求,则使用$.get,否则使用$.post。

深入解析$.ajax参数

网址:

请求是一个String类型参数,(默认是当前页面地址)以及请求发送到的地址。

类型

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

暂停:

要求是一个Number类型的参数,设置请求超时时间(纳秒)。 此设置将覆盖 $.ajaxSetup() 方法中的全局设置。

异步:

要求是一个Boolean类型参数jquery事件参数,默认设置为true,所有请求都是异步请求。 如果需要发送同步请求,请将此选项设置为 false。 请注意,同步请求会锁定浏览器,用户必须等待请求完成才能执行其他操作。

缓存:

request是Boolean类型的参数,默认为true(当dataType为script时,默认为false),设置为false将不会从浏览器缓存中加载请求信息。

数据:

需要Object或String类型的参数,将数据发送到服务器。 如果不是字符串,则会手动转换为字符串格式。 get 请求将附加到 url 中。 为了避免这些手动转换,请查看 processData 选项。 该对象必须采用键/值格式。

数据类型:

该参数必须是 String 类型,即服务器期望返回的数据类型。 如果不指定,JQuery将根据http包mime信息手动返回responseXML或responseText,并将其作为反弹函数参数传递。 可用类型如下:

发送前:

参数必须是 Function 类型。 您可以在发送请求之前更改 XMLHttpRequest 对象的功能,例如添加自定义 HTTP 标头。 如果beforeSend返回false,则可以取消本次ajax请求。 XMLHttpRequest 对象是唯一的参数。

完全的:

请求是Function类型的参数,是请求完成后调用的反弹函数(请求成功或失败时调用)。 参数:XMLHttpRequest 对象和描述成功请求类型的字符串。

成功:

参数必须是Function类型。 请求成功后调用的反弹函数有两个参数。

(1) 服务器返回并根据dataType参数进行处理的数据。

(2) 描述状态的字符串。

错误:

请求是一个Function类型的参数,是请求失败时要调用的函数。 该函数有三个参数,分别是XMLHttpRequest对象、错误消息和捕获的错误对象(可选)。

内容类型:

该参数必须是 String 类型。 向服务器发送信息时,内容编码类型默认为“application/x-www-form-urlencoded”。 该默认值适用于大多数应用程序。

数据过滤器:

需要的参数是Function类型,是对Ajax返回的原始数据进行预处理的函数。 提供两个参数:数据和类型。 data是Ajax返回的原始数据,type是调用jQuery.ajax时提供的dataType参数。 函数返回的值将由 jQuery 进一步处理。

数据过滤器:

需要的参数是Function类型,是对Ajax返回的原始数据进行预处理的函数。 提供两个参数:数据和类型。 data是Ajax返回的原始数据,type是调用jQuery.ajax时提供的dataType参数。 函数返回的值将由 jQuery 进一步处理。

全球的:

需要Boolean类型的参数,默认为true。 是否触发全局ajax风暴。 设置为 false 不会触发全局ajax风暴。 ajaxStart或ajaxStop可用于控制各种ajax风暴。

如果修改:

需要Boolean类型的参数,默认为false。 仅当服务器数据发生变化时获取新数据。 判断服务器数据变化的依据是Last-Modified头信息。 默认值为 falsejquery事件参数,这意味着头信息被忽略。

jsonp:

要求参数为String类型,在jsonp请求中重绘反弹函数的名称。 该值用于替换URL参数中“callback=?”中的“callback”部分。 GET 或 POST 请求,例如 {jsonp:'onJsonPLoad'} 将导致“onJsonPLoad=?” 要传递到服务器。

用户名:

该参数要求为String类型,用于响应HTTP访问认证请求的用户名。

密码:

该参数要求为String类型,为响应HTTP访问认证请求时使用的密码。

处理数据:

需要Boolean类型的参数,默认为true。 默认情况下,发送的数据将转换为对象(技术上不是字符串)以匹配默认内容类型“application/x-www-form-urlencoded”。 如果您想发送 DOM 树信息或其他不想转换的信息,请设置为 false。

脚本字符集:

要求为String类型的参数仅在请求时dataType为“jsonp”或“script”时使用,但当类型为GET时,会用于强制改变字符集(charset)。 一般当本地和远程内容编码不同时使用。

Ajax是一项非常好的技术。 别以为这很简单。 只有亲自尝试过,才能对Ajax有深刻的印象。 想必大家都有自己的解决方案。 欢迎您在下方留言分析。

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

悟空资源网 jquery jquery事件参数-使用jqueryajax技术与服务器数据交互的三种方式 https://www.wkzy.net/game/185985.html

常见问题

相关文章

官方客服团队

为您解决烦忧 - 24小时在线 专业服务