jQuery.post() .done() 并成功:

2024-01-21

jQuery文档关于jQuery.post( )

// Assign handlers immediately after making the request,
// and remember the jqxhr object for this request
var jqxhr = $.post( "example.php", function() {
  alert( "success" );
})
  .done(function() {
    alert( "second success" );
  })
  .fail(function() {
    alert( "error" );
  })
  .always(function() {
    alert( "finished" );
});

// Perform other work here ...

// Set another completion function for the request above
jqxhr.always(function() {
  alert( "second finished" );
});

两者有什么区别success:参数和jqXHR.done( )方法;如果没有,那么整个问题的意义是什么?jqXHR.done( ) method?


jQuery 过去只有回调函数success and error and complete.

然后,他们决定使用 jqXHR 对象支持 Promise,就在那时他们添加了.done(), .fail(), .always()等等...本着 Promise API 的精神。这些新方法的用途与回调大致相同,但形式不同。您可以使用更适合您的编码风格的 API 风格。

随着人们越来越熟悉 Promise,并且越来越多的异步操作使用这个概念,我怀疑随着时间的推移,越来越多的人会转向 Promise API,但与此同时 jQuery 同时支持这两者。

The .success()method 已被弃用,取而代之的是通用的 Promise 对象方法名称。

来自jQuery 文档 https://api.jquery.com/jQuery.ajax/,您可以看到各种 Promise 方法如何与回调类型相关:

jqXHR.done(函数(数据,textStatus,jqXHR){});替代 构造成功回调选项,.done() 方法替换 已弃用的 jqXHR.success() 方法。参考 deferred.done() 进行 实施细节。

jqXHR.fail(function( jqXHR, textStatus, errorThrown ) {});一个 错误回调选项的替代构造,.fail() 方法 替换已弃用的 .error() 方法。参考 deferred.fail() 进行 实施细节。

jqXHR.always(function( 数据|jqXHR, textStatus, jqXHR|errorThrown ) { });完整回调选项的另一种构造是 .always() 方法取代了已弃用的 .complete() 方法。

为了响应成功的请求,该函数的参数是 与 .done() 相同:数据、textStatus 和 jqXHR 对象。为了 失败的请求参数与 .fail() 的参数相同: jqXHR 对象、textStatus 和 errorThrown。参考deferred.always() 了解实施细节。

jqXHR.then(函数(数据,textStatus,jqXHR){},函数(jqXHR, 文本状态,错误抛出){});结合了以下功能 .done() 和 .fail() 方法,允许(从 jQuery 1.8 开始) 潜在的承诺被操纵。参考 deferred.then() 进行 实施细节。

如果您想以更符合 ES6 Promises 标准的方式进行编码,那么您只需使用这四个选项.then().

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

jQuery.post() .done() 并成功: 的相关文章

  • innerText 和 html 之间的区别

    有什么区别innerText text and html innerText or text http docs jquery com Attributes text如果您使用的是 jQuery 不包含任何 HTML 标签 因此 如果您有一
  • 包含从代码隐藏 (ASP.NET C#) 到 ASPX 中的图像概述的图像列表 [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 由于 javascript jQuery 创建的容器 CSS,iScroll 4 停止工作

    我在 DIV 内运行 iScroll 4 但 DIV 的高度是动态生成的 并且搞砸了 iScroll
  • iframe src 允许所有来源,但仍然收到跨来源错误

    我管理 siteA 的前端 并在页面上有一个 iframe 其中 src 指向 siteB 的资源 这是其他供应商和客户端使用的可嵌入资源 其视频嵌入 因此 siteB 的响应标头设置为 Access Control Allow Origi
  • 在html页面中使用jquery显示json数据

  • 单击表格行可显示更多信息

    我正在尝试使用 jQuery 来实现以下目标 当单击一个表格行时 会显示表格行内的 info div 如果单击另一个表格行 则当前显示的任何其他 info 元素将被隐藏 并根据表格行显示新的 info div已被点击 这个问题是 代码无法正
  • 如何居中对齐数据表标题

    我是数据表新手 当我制作表格标题时 它总是左对齐 如何将标题设置为居中对齐 我已阅读 datatables net manual styling classes 和 datatables net reference option colum
  • 重新加载页面时删除哈希值?

    我使用哈希来切换我的图像滑块 当我重新加载页面并且哈希值设置为 e h 3 没有图片 当图库在几秒钟后自动滑动时 它显示下一个 所以几秒钟内什么也没有 有没有办法在加载页面时检查哈希并将其删除 我只想关心那些用散列为页面添加书签的人 问候
  • 如何从 jQuery 选择器中排除某个类?

    我有以下代码 input type text wijtextbox 我想要的是 如果我的文本框的类是本机的 则不应用 wijtextbox 有没有办法通过添加到上面的选择器来以某种方式排除它 将其设为 wijtextbox
  • 获取异常 jQuery 必须包含在 Bootstrap 的 JavaScript 之前

    我遇到以下异常 bootstrap js 240 Uncaught TypeError Bootstrap 的 JavaScript 需要 jQuery jQuery 必须包含在 Bootstrap 的 JavaScript 之前 在 Ob
  • UpdatePanel 破坏 JQuery 脚本

    这是我想做的事情的简化版本 基本上我有一个数据列表 里面有很多东西 当你将鼠标悬停在数据列表中的项目上时 我希望 jquery 隐藏 显示东西 问题是 在我进行数据绑定后 如果 gridview repeater datalist 位于更新
  • Razor mvc3 + jquery + Url 操作 + 部分视图

    我有一个关于 jQuery Razor 的问题 我想使用 razor 和 Url Action 构建一个 javascript 变量 并且 html 属性将是输入的值 像这样 var d1 d1 val var d2 d2 val var
  • AngularJS + jQuery 移动

    是否还有其他可能性来设计AngularJS以移动友好的方式应用程序CSS 我正在计划一个移动应用程序 并希望使用 AngularJS 进行逻辑和数据绑定 但我不想自己设计所有内容CSS The AngularJSFAQ说它使用jQuery
  • JQuery 菜单图标 RTL

    我正在尝试在阿拉伯语 RTL 页面中使用 jQuery 菜单 我可以将其设为 RTL 但图标应该是ui icon carat 1 w not ui icon carat 1 e 我创建jsfiddle在这里 http jsfiddle ne
  • 返回视图作为 JSON 对象的一部分

    我有一个应用程序只加载一次完整视图 我这样做的原因并不重要 重要的是 其余内容只会以部分视图的形式返回 除了一些内容之外 我还有一些 JSON 对象 我想通过每个 AJAX 请求在服务器之间来回传递 有没有办法返回一个 JSON 对象 并将
  • 当php脚本通过ajax运行时显示进度条

    我有一个通过 ajax 向服务器提交值的表单
  • Google Apps 脚本中 $.ajax() 的服务器端等效项是什么?

    我想在 Google App 脚本中从服务器端代码执行 HTTP 请求Authorization标头 是否有用于发送 HTTP 请求的 App Script API Google Apps 脚本中的这段代码相当于什么 var api URL
  • 触发 jQuery UI 滑块事件

    如何触发更改事件jQuery UI 滑块 http docs jquery com UI Slider 我以为会是 slider trigger slidechange 但这没有任何作用 完整的示例脚本如下
  • 将网站加载到 DIV 中

    当我在文本框中写入 URL 然后单击提交按钮时 如何实际从网站检索数据 我希望将数据放入我拥有的 div 中 这可能吗 我已经尝试过这个 但它不起作用
  • 从 jQuery UI 对话框调用 Bootstrap 模式:超出最大调用堆栈大小

    我有一个有点奇怪的问题 我正在调用 Bootstrap Modal 同时打开了 jQuery UI 对话框并且正在获取RangeError Maximum call stack size exceeded 在控制台中 奇怪的是 只有当我在打

随机推荐

  • FFMPEG API:如何使用 av_open_input_file 连接到 RTSP 流?

    我正在尝试使用 av open input file 连接到一些 RTSP 流 如下所示 AVFormatContext ic avcodec register all av register all av open input file
  • Java 中可序列化和外部化有什么区别?

    有什么区别Serializable http java sun com javase 6 docs api java io Serializable html and Externalizable http java sun com jav
  • 冒泡排序与选择排序相比如何?

    哪种排序技术更快 冒泡排序或选择排序 为什么 两者效率相同吗 维基百科 http en wikipedia org wiki Selection sort说 强调 Among simple average case n2 algorithm
  • 如何通过拒绝selenium webdriver中的弹出窗口来关闭浏览器

    我有一个测试用例 登录后 在某个页面上 当用户尝试关闭浏览器时 它将显示弹出窗口 警报 询问 您可能会丢失数据 确定要继续吗 有两个选项 离开页面 留在页面上 单击特定选项 页面将执行操作 留在页面 不会离开页面 离开页面 将关闭浏览器 现
  • 使用实体框架时,是否可以强制生成的实体类为 Pascal 大小写?

    我正在使用的数据库具有诸如 table name 之类的表名称 很好 但我想生成 TableName 格式的类 以便在 C Pascal 风格中使用 这可能吗 更新 要与 EF6 一起使用 请参阅本页上的其他答案 谢谢亚历克斯的回答 htt
  • ASP.NET Web API 基本身份验证授权标头

    我有一个BasicAuthenticationAttribute检查请求中的 Authorization 标头 但尽管它存在 它仍然认为 Authorization 标头为空 public class BasicAuthentication
  • 测试 Bash 中字符串是否包含非空白字符

    我的脚本正在读取并显示 id3 标签 我试图让它回显未知字段是否为空 但我尝试的每个 if 语句都不起作用 id3 标签是固定大小的 因此它们永远不会为空 但如果没有值 它们会用空格填充 即标题标签的长度为 30 个字符 到目前为止我已经尝
  • 如何在重定向 Express 4 之前找到原始请求路径

    假设我正在尝试访问该路径http localhost 3000 users WyCrYc28r foo 1414585518343 但路径 users仅需要经过身份验证的用户才能访问 如下所示 app get users isLoggedI
  • 如何检测在 Windows Phone 7 中选择了枢轴项目

    我正在 Windows Phone 7 中实现 Pivot 控件 我想知道在用户进行滑动手势后哪个枢轴项目被选择并处于活动状态 如何检测与Pivot控件相关的滑动手势事件 我应该使用哪种委托方法 SelectionChanged 是连接到的
  • 是否可以在不启动另一个进程的情况下提升UAC进程

    我想知道程序是否可以通过 UAC 提示来提示用户提升自己的权限 而无需启动另一个进程 我在互联网上找到的所有示例似乎都是 ShellExecute runas 它创建了一个具有提升权限的新进程 如果这是不可能的 那么我想我最好的解决方案是创
  • 在 Angular 5 / TypeScript 中获取类(接口)属性而不分配默认值

    假设我有一个接口 A 我按照 Angular 风格指南将其声明为一个类 这个类有很多属性 我想获取它们的名称 而不必为它们分配任何值 我怎样才能做到这一点 Class A export class A property1 string pr
  • segue后屏幕变黑

    我尝试对此进行调试但无济于事 基本上 当我从第一个视图控制器切换到第二个视图控制器时 屏幕会暂时变黑 代码按照我想要的方式执行 但是屏幕变黑对我来说有点痛苦 这是代码 从第一页开始的segue func mapView mapView MG
  • 使用表达式创建带有嵌套类的谓词

    我有这个 public class Company public int Id get set public string Name get set public class City public int Id get set publi
  • Java 集合框架的 Python 等价物是什么?

    Java 集合框架就像 C 标准模板库 用于表示和操作集合 将多个元素分组为一个单元的对象 的统一体系结构 http java sun com docs books tutorial collections intro index html
  • 如何在Azure中为Net Core 2应用程序启用应用程序日志?

    我正在尝试在天蓝色中启用应用程序日志 我有一个虚拟的 Net Core 2 应用程序在 azure 的 appService 中运行 基本上我的目标是查看日志流和应用程序日志文件中的跟踪消息 但我还没有找到执行此操作的正确方法 我在阅读其他
  • Angular - 构建后未处理的导航错误

    我通过以下命令构建了一个简单的角度应用程序 其中有 2 条路线 ng build aot prod base href 然后我打开index html文件位于dist文件夹和应用程序运行 但路线不起作用 我在控制台上收到以下警告 希望能很好
  • Yeoman gifsicle 错误(及其他)

    我在尝试执行此操作时收到以下错误yo angular 在搭建过程中还有其他错误消息 I did npm install g yo npm install g generator angular yo angular 我也尝试过做npm in
  • 如何使用 MP4Box 创建 mpd 文件

    我是 GPAC 的 MP4Box 工具的新手 使用它 我们可以为 DASH 创建 MPD 媒体演示描述 文件 我不知道该怎么做 有人使用此工具为视频文件创建 MPD 吗 MP4Box dash 2000 profile dashavc264
  • 授权具有多个角色的属性

    我想向控制器添加授权 一次用于多个角色 通常情况下 它看起来像这样 Authorize Roles RoleA RoleB RoleC public async Task
  • jQuery.post() .done() 并成功:

    jQuery文档关于jQuery post Assign handlers immediately after making the request and remember the jqxhr object for this reques