【问题标题】:JQuery .post() ajax parameters explanationjQuery .post() ajax 参数说明
【发布时间】:2014-07-04 05:45:11
【问题描述】:

我对用于进行 ajax 调用的 JQuery .post() 函数有疑问。问题在下面的代码中:

$.post( "processOrder", $( "#OrderForm" ).serialize(), function() {
          // What is the diff between putting code here....
        })
            .done(function(data) {

               // ... and putting it in the "done" instead ?.... 

              })
            .fail(function() {

              })
            .always(function() {

        });

【问题讨论】:

标签: jquery ajax


【解决方案1】:

只有当请求被认为成功并且它们都将相同的参数传递给回调(data、textStatus、jqXHR)时,两者才会触发。唯一的区别是.done() 附加在“promise”样式中并使用jQuery 的Deferred Object 实现,而另一个作为参数传递给$.post

您可能会认为.done() 方法更灵活,因为您可以在其他地方返回或传递jQuery 对象,从而允许其他代码添加.done() 或其他延迟处理程序。也就是说,您仍然可以使用成功处理程序作为参数,然后稍后添加.done()。最后,.done() 可以接受一个回调数组,所有这些都会被执行,而成功参数只接受一个函数。

【讨论】:

    猜你喜欢
    • 2012-09-21
    • 2021-12-31
    • 1970-01-01
    • 1970-01-01
    • 2012-08-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-21
    相关资源
    最近更新 更多