<a href="https://api.jquery.com/jquery.ajax/#jqXHR">https://api.jquery.com/jquery.ajax/#jqXHR</a>

interface JQueryXHR {
    readyState: number;
    responseJSON?: any;
    responseText: string;
    responseXML?: null | Document;
    status: number;
    statusText: string;
    abort(statusText?: string): void;
    always(
        alwaysCallback: TypeOrArray<
            CallbackBase<
                any,
                SuccessTextStatus
                | ErrorTextStatus,
                string | jqXHR<any>,
                never,
            >,
        >,
        ...alwaysCallbacks: TypeOrArray<
            CallbackBase<
                any,
                SuccessTextStatus
                | ErrorTextStatus,
                string | jqXHR<any>,
                never,
            >,
        >[],
    ): this;
    catch<
        ARF = never,
        AJF = never,
        ANF = never,
        BRF = never,
        BJF = never,
        BNF = never,
        CRF = never,
        CJF = never,
        CNF = never,
        RRF = never,
        RJF = never,
        RNF = never,
    >(
        failFilter?:
            | null
            | (
                t: jqXHR,
                u: ErrorTextStatus,
                v: string,
                ...s: never[],
            ) =>
                | ARF
                | PromiseBase<
                    ARF,
                    AJF,
                    ANF,
                    BRF,
                    BJF,
                    BNF,
                    CRF,
                    CJF,
                    CNF,
                    RRF,
                    RJF,
                    RNF,
                >
                | Thenable<ARF>,
    ): PromiseBase<ARF, AJF, ANF, BRF, BJF, BNF, CRF, CJF, CNF, RRF, RJF, RNF>;
    done(
        doneCallback: TypeOrArray<
            CallbackBase<any, SuccessTextStatus, jqXHR<any>, never>,
        >,
        ...doneCallbacks: TypeOrArray<
            CallbackBase<any, SuccessTextStatus, jqXHR<any>, never>,
        >[],
    ): this;
    fail(
        failCallback: TypeOrArray<
            CallbackBase<jqXHR<any>, ErrorTextStatus, string, never>,
        >,
        ...failCallbacks: TypeOrArray<
            CallbackBase<jqXHR<any>, ErrorTextStatus, string, never>,
        >[],
    ): this;
    getAllResponseHeaders(): string;
    getResponseHeader(name: string): null | string;
    overrideMimeType(mime: string): void;
    pipe<
        ARD = never,
        AJD = never,
        AND = never,
        BRD = never,
        BJD = never,
        BND = never,
        CRD = never,
        CJD = never,
        CND = never,
        RRD = never,
        RJD = never,
        RND = never,
        ARF = never,
        AJF = never,
        ANF = never,
        BRF = never,
        BJF = never,
        BNF = never,
        CRF = never,
        CJF = never,
        CNF = never,
        RRF = never,
        RJF = never,
        RNF = never,
        ARP = never,
        AJP = never,
        ANP = never,
        BRP = never,
        BJP = never,
        BNP = never,
        CRP = never,
        CJP = never,
        CNP = never,
        RRP = never,
        RJP = never,
        RNP = never,
    >(
        doneFilter: (
            t: any,
            u: SuccessTextStatus,
            v: jqXHR,
            ...s: never[],
        ) =>
            | ARD
            | PromiseBase<ARD, AJD, AND, BRD, BJD, BND, CRD, CJD, CND, RRD, RJD, RND>
            | Thenable<ARD>,
        failFilter: (
            t: jqXHR,
            u: ErrorTextStatus,
            v: string,
            ...s: never[],
        ) =>
            | AJF
            | PromiseBase<ARF, AJF, ANF, BRF, BJF, BNF, CRF, CJF, CNF, RRF, RJF, RNF>
            | Thenable<AJF>,
        progressFilter: (
            t: never,
            u: never,
            v: never,
            ...s: never[],
        ) =>
            | ANP
            | PromiseBase<ARP, AJP, ANP, BRP, BJP, BNP, CRP, CJP, CNP, RRP, RJP, RNP>
            | Thenable<ANP>,
    ): PromiseBase<
        ARD
        | ARF
        | ARP,
        AJD | AJF | AJP,
        AND | ANF | ANP,
        BRD | BRF | BRP,
        BJD | BJF | BJP,
        BND | BNF | BNP,
        CRD | CRF | CRP,
        CJD | CJF | CJP,
        CND | CNF | CNP,
        RRD | RRF | RRP,
        RJD | RJF | RJP,
        RND | RNF | RNP,
    >;
    pipe<
        ARF = never,
        AJF = never,
        ANF = never,
        BRF = never,
        BJF = never,
        BNF = never,
        CRF = never,
        CJF = never,
        CNF = never,
        RRF = never,
        RJF = never,
        RNF = never,
        ARP = never,
        AJP = never,
        ANP = never,
        BRP = never,
        BJP = never,
        BNP = never,
        CRP = never,
        CJP = never,
        CNP = never,
        RRP = never,
        RJP = never,
        RNP = never,
    >(
        doneFilter: null,
        failFilter: (
            t: jqXHR,
            u: ErrorTextStatus,
            v: string,
            ...s: never[],
        ) =>
            | AJF
            | PromiseBase<ARF, AJF, ANF, BRF, BJF, BNF, CRF, CJF, CNF, RRF, RJF, RNF>
            | Thenable<AJF>,
        progressFilter: (
            t: never,
            u: never,
            v: never,
            ...s: never[],
        ) =>
            | ANP
            | PromiseBase<ARP, AJP, ANP, BRP, BJP, BNP, CRP, CJP, CNP, RRP, RJP, RNP>
            | Thenable<ANP>,
    ): PromiseBase<
        ARF
        | ARP,
        AJF | AJP,
        ANF | ANP,
        BRF | BRP,
        BJF | BJP,
        BNF | BNP,
        CRF | CRP,
        CJF | CJP,
        CNF | CNP,
        RRF | RRP,
        RJF | RJP,
        RNF | RNP,
    >;
    pipe<
        ARD = never,
        AJD = never,
        AND = never,
        BRD = never,
        BJD = never,
        BND = never,
        CRD = never,
        CJD = never,
        CND = never,
        RRD = never,
        RJD = never,
        RND = never,
        ARP = never,
        AJP = never,
        ANP = never,
        BRP = never,
        BJP = never,
        BNP = never,
        CRP = never,
        CJP = never,
        CNP = never,
        RRP = never,
        RJP = never,
        RNP = never,
    >(
        doneFilter: (
            t: any,
            u: SuccessTextStatus,
            v: jqXHR,
            ...s: never[],
        ) =>
            | ARD
            | PromiseBase<ARD, AJD, AND, BRD, BJD, BND, CRD, CJD, CND, RRD, RJD, RND>
            | Thenable<ARD>,
        failFilter: null,
        progressFilter: (
            t: never,
            u: never,
            v: never,
            ...s: never[],
        ) =>
            | ANP
            | PromiseBase<ARP, AJP, ANP, BRP, BJP, BNP, CRP, CJP, CNP, RRP, RJP, RNP>
            | Thenable<ANP>,
    ): PromiseBase<
        ARD
        | ARP,
        AJD | AJP,
        AND | ANP,
        BRD | BRP,
        BJD | BJP,
        BND | BNP,
        CRD | CRP,
        CJD | CJP,
        CND | CNP,
        RRD | RRP,
        RJD | RJP,
        RND | RNP,
    >;
    pipe<
        ARP = never,
        AJP = never,
        ANP = never,
        BRP = never,
        BJP = never,
        BNP = never,
        CRP = never,
        CJP = never,
        CNP = never,
        RRP = never,
        RJP = never,
        RNP = never,
    >(
        doneFilter: null,
        failFilter: null,
        progressFilter?: (
            t: never,
            u: never,
            v: never,
            ...s: never[],
        ) =>
            | ANP
            | PromiseBase<ARP, AJP, ANP, BRP, BJP, BNP, CRP, CJP, CNP, RRP, RJP, RNP>
            | Thenable<ANP>,
    ): PromiseBase<ARP, AJP, ANP, BRP, BJP, BNP, CRP, CJP, CNP, RRP, RJP, RNP>;
    pipe<
        ARD = never,
        AJD = never,
        AND = never,
        BRD = never,
        BJD = never,
        BND = never,
        CRD = never,
        CJD = never,
        CND = never,
        RRD = never,
        RJD = never,
        RND = never,
        ARF = never,
        AJF = never,
        ANF = never,
        BRF = never,
        BJF = never,
        BNF = never,
        CRF = never,
        CJF = never,
        CNF = never,
        RRF = never,
        RJF = never,
        RNF = never,
    >(
        doneFilter: (
            t: any,
            u: SuccessTextStatus,
            v: jqXHR,
            ...s: never[],
        ) =>
            | ARD
            | PromiseBase<ARD, AJD, AND, BRD, BJD, BND, CRD, CJD, CND, RRD, RJD, RND>
            | Thenable<ARD>,
        failFilter: (
            t: jqXHR,
            u: ErrorTextStatus,
            v: string,
            ...s: never[],
        ) =>
            | AJF
            | PromiseBase<ARF, AJF, ANF, BRF, BJF, BNF, CRF, CJF, CNF, RRF, RJF, RNF>
            | Thenable<AJF>,
        progressFilter?: null,
    ): PromiseBase<
        ARD
        | ARF,
        AJD | AJF,
        AND | ANF,
        BRD | BRF,
        BJD | BJF,
        BND | BNF,
        CRD | CRF,
        CJD | CJF,
        CND | CNF,
        RRD | RRF,
        RJD | RJF,
        RND | RNF,
    >;
    pipe<
        ARF = never,
        AJF = never,
        ANF = never,
        BRF = never,
        BJF = never,
        BNF = never,
        CRF = never,
        CJF = never,
        CNF = never,
        RRF = never,
        RJF = never,
        RNF = never,
    >(
        doneFilter: null,
        failFilter: (
            t: jqXHR,
            u: ErrorTextStatus,
            v: string,
            ...s: never[],
        ) =>
            | AJF
            | PromiseBase<ARF, AJF, ANF, BRF, BJF, BNF, CRF, CJF, CNF, RRF, RJF, RNF>
            | Thenable<AJF>,
        progressFilter?: null,
    ): PromiseBase<ARF, AJF, ANF, BRF, BJF, BNF, CRF, CJF, CNF, RRF, RJF, RNF>;
    pipe<
        ARD = never,
        AJD = never,
        AND = never,
        BRD = never,
        BJD = never,
        BND = never,
        CRD = never,
        CJD = never,
        CND = never,
        RRD = never,
        RJD = never,
        RND = never,
    >(
        doneFilter: (
            t: any,
            u: SuccessTextStatus,
            v: jqXHR,
            ...s: never[],
        ) =>
            | ARD
            | PromiseBase<ARD, AJD, AND, BRD, BJD, BND, CRD, CJD, CND, RRD, RJD, RND>
            | Thenable<ARD>,
        failFilter?: null,
        progressFilter?: null,
    ): PromiseBase<ARD, AJD, AND, BRD, BJD, BND, CRD, CJD, CND, RRD, RJD, RND>;
    progress(
        progressCallback: TypeOrArray<CallbackBase<never, never, never, never>>,
        ...progressCallbacks: TypeOrArray<
            CallbackBase<never, never, never, never>,
        >[],
    ): this;
    promise<TTarget extends object>(target: TTarget): JQueryXHR & TTarget;
    promise(): this;
    setRequestHeader(name: string, value: string): void;
    state(): "pending" | "rejected" | "resolved";
    statusCode(map: StatusCodeCallbacks<any>): void;
    then<
        ARD = never,
        AJD = never,
        AND = never,
        BRD = never,
        BJD = never,
        BND = never,
        CRD = never,
        CJD = never,
        CND = never,
        RRD = never,
        RJD = never,
        RND = never,
        ARF = never,
        AJF = never,
        ANF = never,
        BRF = never,
        BJF = never,
        BNF = never,
        CRF = never,
        CJF = never,
        CNF = never,
        RRF = never,
        RJF = never,
        RNF = never,
        ARP = never,
        AJP = never,
        ANP = never,
        BRP = never,
        BJP = never,
        BNP = never,
        CRP = never,
        CJP = never,
        CNP = never,
        RRP = never,
        RJP = never,
        RNP = never,
    >(
        doneFilter: (
            t: any,
            u: SuccessTextStatus,
            v: jqXHR,
            ...s: never[],
        ) =>
            | ARD
            | PromiseBase<ARD, AJD, AND, BRD, BJD, BND, CRD, CJD, CND, RRD, RJD, RND>
            | Thenable<ARD>,
        failFilter: (
            t: jqXHR,
            u: ErrorTextStatus,
            v: string,
            ...s: never[],
        ) =>
            | ARF
            | PromiseBase<ARF, AJF, ANF, BRF, BJF, BNF, CRF, CJF, CNF, RRF, RJF, RNF>
            | Thenable<ARF>,
        progressFilter: (
            t: never,
            u: never,
            v: never,
            ...s: never[],
        ) =>
            | ANP
            | PromiseBase<ARP, AJP, ANP, BRP, BJP, BNP, CRP, CJP, CNP, RRP, RJP, RNP>
            | Thenable<ANP>,
    ): PromiseBase<
        ARD
        | ARF
        | ARP,
        AJD | AJF | AJP,
        AND | ANF | ANP,
        BRD | BRF | BRP,
        BJD | BJF | BJP,
        BND | BNF | BNP,
        CRD | CRF | CRP,
        CJD | CJF | CJP,
        CND | CNF | CNP,
        RRD | RRF | RRP,
        RJD | RJF | RJP,
        RND | RNF | RNP,
    >;
    then<
        ARF = never,
        AJF = never,
        ANF = never,
        BRF = never,
        BJF = never,
        BNF = never,
        CRF = never,
        CJF = never,
        CNF = never,
        RRF = never,
        RJF = never,
        RNF = never,
        ARP = never,
        AJP = never,
        ANP = never,
        BRP = never,
        BJP = never,
        BNP = never,
        CRP = never,
        CJP = never,
        CNP = never,
        RRP = never,
        RJP = never,
        RNP = never,
    >(
        doneFilter: null,
        failFilter: (
            t: jqXHR,
            u: ErrorTextStatus,
            v: string,
            ...s: never[],
        ) =>
            | ARF
            | PromiseBase<ARF, AJF, ANF, BRF, BJF, BNF, CRF, CJF, CNF, RRF, RJF, RNF>
            | Thenable<ARF>,
        progressFilter: (
            t: never,
            u: never,
            v: never,
            ...s: never[],
        ) =>
            | ANP
            | PromiseBase<ARP, AJP, ANP, BRP, BJP, BNP, CRP, CJP, CNP, RRP, RJP, RNP>
            | Thenable<ANP>,
    ): PromiseBase<
        ARF
        | ARP,
        AJF | AJP,
        ANF | ANP,
        BRF | BRP,
        BJF | BJP,
        BNF | BNP,
        CRF | CRP,
        CJF | CJP,
        CNF | CNP,
        RRF | RRP,
        RJF | RJP,
        RNF | RNP,
    >;
    then<
        ARD = never,
        AJD = never,
        AND = never,
        BRD = never,
        BJD = never,
        BND = never,
        CRD = never,
        CJD = never,
        CND = never,
        RRD = never,
        RJD = never,
        RND = never,
        ARP = never,
        AJP = never,
        ANP = never,
        BRP = never,
        BJP = never,
        BNP = never,
        CRP = never,
        CJP = never,
        CNP = never,
        RRP = never,
        RJP = never,
        RNP = never,
    >(
        doneFilter: (
            t: any,
            u: SuccessTextStatus,
            v: jqXHR,
            ...s: never[],
        ) =>
            | ARD
            | PromiseBase<ARD, AJD, AND, BRD, BJD, BND, CRD, CJD, CND, RRD, RJD, RND>
            | Thenable<ARD>,
        failFilter: null,
        progressFilter: (
            t: never,
            u: never,
            v: never,
            ...s: never[],
        ) =>
            | ANP
            | PromiseBase<ARP, AJP, ANP, BRP, BJP, BNP, CRP, CJP, CNP, RRP, RJP, RNP>
            | Thenable<ANP>,
    ): PromiseBase<
        ARD
        | ARP,
        AJD | AJP,
        AND | ANP,
        BRD | BRP,
        BJD | BJP,
        BND | BNP,
        CRD | CRP,
        CJD | CJP,
        CND | CNP,
        RRD | RRP,
        RJD | RJP,
        RND | RNP,
    >;
    then<
        ARP = never,
        AJP = never,
        ANP = never,
        BRP = never,
        BJP = never,
        BNP = never,
        CRP = never,
        CJP = never,
        CNP = never,
        RRP = never,
        RJP = never,
        RNP = never,
    >(
        doneFilter: null,
        failFilter: null,
        progressFilter?: (
            t: never,
            u: never,
            v: never,
            ...s: never[],
        ) =>
            | ANP
            | PromiseBase<ARP, AJP, ANP, BRP, BJP, BNP, CRP, CJP, CNP, RRP, RJP, RNP>
            | Thenable<ANP>,
    ): PromiseBase<ARP, AJP, ANP, BRP, BJP, BNP, CRP, CJP, CNP, RRP, RJP, RNP>;
    then<
        ARD = never,
        AJD = never,
        AND = never,
        BRD = never,
        BJD = never,
        BND = never,
        CRD = never,
        CJD = never,
        CND = never,
        RRD = never,
        RJD = never,
        RND = never,
        ARF = never,
        AJF = never,
        ANF = never,
        BRF = never,
        BJF = never,
        BNF = never,
        CRF = never,
        CJF = never,
        CNF = never,
        RRF = never,
        RJF = never,
        RNF = never,
    >(
        doneFilter: (
            t: any,
            u: SuccessTextStatus,
            v: jqXHR,
            ...s: never[],
        ) =>
            | ARD
            | PromiseBase<ARD, AJD, AND, BRD, BJD, BND, CRD, CJD, CND, RRD, RJD, RND>
            | Thenable<ARD>,
        failFilter: (
            t: jqXHR,
            u: ErrorTextStatus,
            v: string,
            ...s: never[],
        ) =>
            | ARF
            | PromiseBase<ARF, AJF, ANF, BRF, BJF, BNF, CRF, CJF, CNF, RRF, RJF, RNF>
            | Thenable<ARF>,
        progressFilter?: null,
    ): PromiseBase<
        ARD
        | ARF,
        AJD | AJF,
        AND | ANF,
        BRD | BRF,
        BJD | BJF,
        BND | BNF,
        CRD | CRF,
        CJD | CJF,
        CND | CNF,
        RRD | RRF,
        RJD | RJF,
        RND | RNF,
    >;
    then<
        ARF = never,
        AJF = never,
        ANF = never,
        BRF = never,
        BJF = never,
        BNF = never,
        CRF = never,
        CJF = never,
        CNF = never,
        RRF = never,
        RJF = never,
        RNF = never,
    >(
        doneFilter: null,
        failFilter: (
            t: jqXHR,
            u: ErrorTextStatus,
            v: string,
            ...s: never[],
        ) =>
            | ARF
            | PromiseBase<ARF, AJF, ANF, BRF, BJF, BNF, CRF, CJF, CNF, RRF, RJF, RNF>
            | Thenable<ARF>,
        progressFilter?: null,
    ): PromiseBase<ARF, AJF, ANF, BRF, BJF, BNF, CRF, CJF, CNF, RRF, RJF, RNF>;
    then<
        ARD = never,
        AJD = never,
        AND = never,
        BRD = never,
        BJD = never,
        BND = never,
        CRD = never,
        CJD = never,
        CND = never,
        RRD = never,
        RJD = never,
        RND = never,
    >(
        doneFilter: (
            t: any,
            u: SuccessTextStatus,
            v: jqXHR,
            ...s: never[],
        ) =>
            | ARD
            | PromiseBase<ARD, AJD, AND, BRD, BJD, BND, CRD, CJD, CND, RRD, RJD, RND>
            | Thenable<ARD>,
        failFilter?: null,
        progressFilter?: null,
    ): PromiseBase<ARD, AJD, AND, BRD, BJD, BND, CRD, CJD, CND, RRD, RJD, RND>;
}

Hierarchy (View Summary)

Properties

readyState: number

Returns client's state.

MDN Reference

responseJSON?: any
responseText: string

Returns response as text.

Throws an "InvalidStateError" DOMException if responseType is not the empty string or "text".

MDN Reference

responseXML?: null | Document

Returns the response as document.

Throws an "InvalidStateError" DOMException if responseType is not the empty string or "document".

MDN Reference

status: number
statusText: string

Methods

  • Cancels any network activity.

    MDN Reference

    Parameters

    • OptionalstatusText: string

    Returns void

  • Add handlers to be called when the Deferred object is either resolved or rejected.

    Parameters

    • alwaysCallback: TypeOrArray<
          CallbackBase<
              any,
              SuccessTextStatus
              | ErrorTextStatus,
              string | jqXHR<any>,
              never,
          >,
      >

      A function, or array of functions, that is called when the Deferred is resolved or rejected.

    • ...alwaysCallbacks: TypeOrArray<
          CallbackBase<
              any,
              SuccessTextStatus
              | ErrorTextStatus,
              string | jqXHR<any>,
              never,
          >,
      >[]

      Optional additional functions, or arrays of functions, that are called when the Deferred is resolved or rejected.

    Returns this

    <a href="https://api.jquery.com/deferred.always/">https://api.jquery.com/deferred.always/</a>

    1.6

    $.get( "test.php" ).always(function() {
    alert( "$.get completed with success or error callback arguments" );
    });
  • Add handlers to be called when the Deferred object is rejected.

    Type Parameters

    • ARF = never
    • AJF = never
    • ANF = never
    • BRF = never
    • BJF = never
    • BNF = never
    • CRF = never
    • CJF = never
    • CNF = never
    • RRF = never
    • RJF = never
    • RNF = never

    Parameters

    Returns PromiseBase<ARF, AJF, ANF, BRF, BJF, BNF, CRF, CJF, CNF, RRF, RJF, RNF>

    <a href="https://api.jquery.com/deferred.catch/">https://api.jquery.com/deferred.catch/</a>

    3.0

    $.get( "test.php" )
    .then( function() {
    alert( "$.get succeeded" );
    } )
    .catch( function() {
    alert( "$.get failed!" );
    } );
  • Add handlers to be called when the Deferred object is resolved.

    Parameters

    Returns this

    <a href="https://api.jquery.com/deferred.done/">https://api.jquery.com/deferred.done/</a>

    1.5

    <!doctype html>
    <html lang="en">
    <head>
    <meta charset="utf-8">
    <title>deferred.done demo</title>
    <script src="https://code.jquery.com/jquery-3.3.1.js"></script>
    </head>
    <body>

    <button>Go</button>
    <p>Ready...</p>

    <script>
    // 3 functions to call when the Deferred object is resolved
    function fn1() {
    $( "p" ).append( " 1 " );
    }
    function fn2() {
    $( "p" ).append( " 2 " );
    }
    function fn3( n ) {
    $( "p" ).append( n + " 3 " + n );
    }

    // Create a deferred object
    var dfd = $.Deferred();

    // Add handlers to be called when dfd is resolved
    dfd
    // .done() can take any number of functions or arrays of functions
    .done( [ fn1, fn2 ], fn3, [ fn2, fn1 ] )
    // We can chain done methods, too
    .done(function( n ) {
    $( "p" ).append( n + " we're done." );
    });

    // Resolve the Deferred object when the button is clicked
    $( "button" ).on( "click", function() {
    dfd.resolve( "and" );
    });
    </script>

    </body>
    </html>
  • Add handlers to be called when the Deferred object is rejected.

    Parameters

    Returns this

    <a href="https://api.jquery.com/deferred.fail/">https://api.jquery.com/deferred.fail/</a>

    1.5

    $.get( "test.php" )
    .done(function() {
    alert( "$.get succeeded" );
    })
    .fail(function() {
    alert( "$.get failed!" );
    });
  • Acts as if the Content-Type header value for a response is mime. (It does not change the header.)

    Throws an "InvalidStateError" DOMException if state is loading or done.

    MDN Reference

    Parameters

    • mime: string

    Returns void

  • Utility method to filter and/or chain Deferreds.

    Type Parameters

    • ARD = never
    • AJD = never
    • AND = never
    • BRD = never
    • BJD = never
    • BND = never
    • CRD = never
    • CJD = never
    • CND = never
    • RRD = never
    • RJD = never
    • RND = never
    • ARF = never
    • AJF = never
    • ANF = never
    • BRF = never
    • BJF = never
    • BNF = never
    • CRF = never
    • CJF = never
    • CNF = never
    • RRF = never
    • RJF = never
    • RNF = never
    • ARP = never
    • AJP = never
    • ANP = never
    • BRP = never
    • BJP = never
    • BNP = never
    • CRP = never
    • CJP = never
    • CNP = never
    • RRP = never
    • RJP = never
    • RNP = never

    Parameters

    Returns PromiseBase<
        ARD
        | ARF
        | ARP,
        AJD | AJF | AJP,
        AND | ANF | ANP,
        BRD | BRF | BRP,
        BJD | BJF | BJP,
        BND | BNF | BNP,
        CRD | CRF | CRP,
        CJD | CJF | CJP,
        CND | CNF | CNP,
        RRD | RRF | RRP,
        RJD | RJF | RJP,
        RND | RNF | RNP,
    >

    <a href="https://api.jquery.com/deferred.pipe/">https://api.jquery.com/deferred.pipe/</a>

    1.6

    1.7

    ​ Deprecated since 1.8. Use <a href="index.SDK.JQueryXHR.html#then" class="tsd-kind-method">then</a>.

    Cause: The .pipe() method on a jQuery.Deferred object was deprecated as of jQuery 1.8, when the .then() method was changed to perform the same function.

    Solution: In most cases it is sufficient to change all occurrences of .pipe() to .then(). Ensure that you aren't relying on context/state propagation (e.g., using this) or synchronous callback invocation, which were dropped from .then() for Promises/A+ interoperability as of jQuery 3.0.

    var defer = $.Deferred(),
    filtered = defer.pipe( null, function( value ) {
    return value * 3;
    });

    defer.reject( 6 );
    filtered.fail(function( value ) {
    alert( "Value is ( 3*6 = ) 18: " + value );
    });
    var request = $.ajax( url, { dataType: "json" } ),
    chained = request.pipe(function( data ) {
    return $.ajax( url2, { data: { user: data.userId } } );
    });

    chained.done(function( data ) {
    // data retrieved from url2 as provided by the first request
    });
  • Utility method to filter and/or chain Deferreds.

    Type Parameters

    • ARF = never
    • AJF = never
    • ANF = never
    • BRF = never
    • BJF = never
    • BNF = never
    • CRF = never
    • CJF = never
    • CNF = never
    • RRF = never
    • RJF = never
    • RNF = never
    • ARP = never
    • AJP = never
    • ANP = never
    • BRP = never
    • BJP = never
    • BNP = never
    • CRP = never
    • CJP = never
    • CNP = never
    • RRP = never
    • RJP = never
    • RNP = never

    Parameters

    Returns PromiseBase<
        ARF
        | ARP,
        AJF | AJP,
        ANF | ANP,
        BRF | BRP,
        BJF | BJP,
        BNF | BNP,
        CRF | CRP,
        CJF | CJP,
        CNF | CNP,
        RRF | RRP,
        RJF | RJP,
        RNF | RNP,
    >

    <a href="https://api.jquery.com/deferred.pipe/">https://api.jquery.com/deferred.pipe/</a>

    1.6

    1.7

    ​ Deprecated since 1.8. Use <a href="index.SDK.JQueryXHR.html#then" class="tsd-kind-method">then</a>.

    Cause: The .pipe() method on a jQuery.Deferred object was deprecated as of jQuery 1.8, when the .then() method was changed to perform the same function.

    Solution: In most cases it is sufficient to change all occurrences of .pipe() to .then(). Ensure that you aren't relying on context/state propagation (e.g., using this) or synchronous callback invocation, which were dropped from .then() for Promises/A+ interoperability as of jQuery 3.0.

    var request = $.ajax( url, { dataType: "json" } ),
    chained = request.pipe(function( data ) {
    return $.ajax( url2, { data: { user: data.userId } } );
    });

    chained.done(function( data ) {
    // data retrieved from url2 as provided by the first request
    });
  • Utility method to filter and/or chain Deferreds.

    Type Parameters

    • ARD = never
    • AJD = never
    • AND = never
    • BRD = never
    • BJD = never
    • BND = never
    • CRD = never
    • CJD = never
    • CND = never
    • RRD = never
    • RJD = never
    • RND = never
    • ARP = never
    • AJP = never
    • ANP = never
    • BRP = never
    • BJP = never
    • BNP = never
    • CRP = never
    • CJP = never
    • CNP = never
    • RRP = never
    • RJP = never
    • RNP = never

    Parameters

    Returns PromiseBase<
        ARD
        | ARP,
        AJD | AJP,
        AND | ANP,
        BRD | BRP,
        BJD | BJP,
        BND | BNP,
        CRD | CRP,
        CJD | CJP,
        CND | CNP,
        RRD | RRP,
        RJD | RJP,
        RND | RNP,
    >

    <a href="https://api.jquery.com/deferred.pipe/">https://api.jquery.com/deferred.pipe/</a>

    1.6

    1.7

    ​ Deprecated since 1.8. Use <a href="index.SDK.JQueryXHR.html#then" class="tsd-kind-method">then</a>.

    Cause: The .pipe() method on a jQuery.Deferred object was deprecated as of jQuery 1.8, when the .then() method was changed to perform the same function.

    Solution: In most cases it is sufficient to change all occurrences of .pipe() to .then(). Ensure that you aren't relying on context/state propagation (e.g., using this) or synchronous callback invocation, which were dropped from .then() for Promises/A+ interoperability as of jQuery 3.0.

    var request = $.ajax( url, { dataType: "json" } ),
    chained = request.pipe(function( data ) {
    return $.ajax( url2, { data: { user: data.userId } } );
    });

    chained.done(function( data ) {
    // data retrieved from url2 as provided by the first request
    });
  • Utility method to filter and/or chain Deferreds.

    Type Parameters

    • ARP = never
    • AJP = never
    • ANP = never
    • BRP = never
    • BJP = never
    • BNP = never
    • CRP = never
    • CJP = never
    • CNP = never
    • RRP = never
    • RJP = never
    • RNP = never

    Parameters

    • doneFilter: null

      An optional function that is called when the Deferred is resolved.

    • failFilter: null

      An optional function that is called when the Deferred is rejected.

    • OptionalprogressFilter: (
          t: never,
          u: never,
          v: never,
          ...s: never[],
      ) =>
          | ANP
          | PromiseBase<ARP, AJP, ANP, BRP, BJP, BNP, CRP, CJP, CNP, RRP, RJP, RNP>
          | Thenable<ANP>

      An optional function that is called when progress notifications are sent to the Deferred.

    Returns PromiseBase<ARP, AJP, ANP, BRP, BJP, BNP, CRP, CJP, CNP, RRP, RJP, RNP>

    <a href="https://api.jquery.com/deferred.pipe/">https://api.jquery.com/deferred.pipe/</a>

    1.6

    1.7

    ​ Deprecated since 1.8. Use <a href="index.SDK.JQueryXHR.html#then" class="tsd-kind-method">then</a>.

    Cause: The .pipe() method on a jQuery.Deferred object was deprecated as of jQuery 1.8, when the .then() method was changed to perform the same function.

    Solution: In most cases it is sufficient to change all occurrences of .pipe() to .then(). Ensure that you aren't relying on context/state propagation (e.g., using this) or synchronous callback invocation, which were dropped from .then() for Promises/A+ interoperability as of jQuery 3.0.

    var request = $.ajax( url, { dataType: "json" } ),
    chained = request.pipe(function( data ) {
    return $.ajax( url2, { data: { user: data.userId } } );
    });

    chained.done(function( data ) {
    // data retrieved from url2 as provided by the first request
    });
  • Utility method to filter and/or chain Deferreds.

    Type Parameters

    • ARD = never
    • AJD = never
    • AND = never
    • BRD = never
    • BJD = never
    • BND = never
    • CRD = never
    • CJD = never
    • CND = never
    • RRD = never
    • RJD = never
    • RND = never
    • ARF = never
    • AJF = never
    • ANF = never
    • BRF = never
    • BJF = never
    • BNF = never
    • CRF = never
    • CJF = never
    • CNF = never
    • RRF = never
    • RJF = never
    • RNF = never

    Parameters

    Returns PromiseBase<
        ARD
        | ARF,
        AJD | AJF,
        AND | ANF,
        BRD | BRF,
        BJD | BJF,
        BND | BNF,
        CRD | CRF,
        CJD | CJF,
        CND | CNF,
        RRD | RRF,
        RJD | RJF,
        RND | RNF,
    >

    <a href="https://api.jquery.com/deferred.pipe/">https://api.jquery.com/deferred.pipe/</a>

    1.6

    1.7

    ​ Deprecated since 1.8. Use <a href="index.SDK.JQueryXHR.html#then" class="tsd-kind-method">then</a>.

    Cause: The .pipe() method on a jQuery.Deferred object was deprecated as of jQuery 1.8, when the .then() method was changed to perform the same function.

    Solution: In most cases it is sufficient to change all occurrences of .pipe() to .then(). Ensure that you aren't relying on context/state propagation (e.g., using this) or synchronous callback invocation, which were dropped from .then() for Promises/A+ interoperability as of jQuery 3.0.

    var defer = $.Deferred(),
    filtered = defer.pipe( null, function( value ) {
    return value * 3;
    });

    defer.reject( 6 );
    filtered.fail(function( value ) {
    alert( "Value is ( 3*6 = ) 18: " + value );
    });
    var request = $.ajax( url, { dataType: "json" } ),
    chained = request.pipe(function( data ) {
    return $.ajax( url2, { data: { user: data.userId } } );
    });

    chained.done(function( data ) {
    // data retrieved from url2 as provided by the first request
    });
  • Utility method to filter and/or chain Deferreds.

    Type Parameters

    • ARF = never
    • AJF = never
    • ANF = never
    • BRF = never
    • BJF = never
    • BNF = never
    • CRF = never
    • CJF = never
    • CNF = never
    • RRF = never
    • RJF = never
    • RNF = never

    Parameters

    • doneFilter: null

      An optional function that is called when the Deferred is resolved.

    • failFilter: (
          t: jqXHR,
          u: ErrorTextStatus,
          v: string,
          ...s: never[],
      ) =>
          | AJF
          | PromiseBase<ARF, AJF, ANF, BRF, BJF, BNF, CRF, CJF, CNF, RRF, RJF, RNF>
          | Thenable<AJF>

      An optional function that is called when the Deferred is rejected.

    • OptionalprogressFilter: null

      An optional function that is called when progress notifications are sent to the Deferred.

    Returns PromiseBase<ARF, AJF, ANF, BRF, BJF, BNF, CRF, CJF, CNF, RRF, RJF, RNF>

    <a href="https://api.jquery.com/deferred.pipe/">https://api.jquery.com/deferred.pipe/</a>

    1.6

    1.7

    ​ Deprecated since 1.8. Use <a href="index.SDK.JQueryXHR.html#then" class="tsd-kind-method">then</a>.

    Cause: The .pipe() method on a jQuery.Deferred object was deprecated as of jQuery 1.8, when the .then() method was changed to perform the same function.

    Solution: In most cases it is sufficient to change all occurrences of .pipe() to .then(). Ensure that you aren't relying on context/state propagation (e.g., using this) or synchronous callback invocation, which were dropped from .then() for Promises/A+ interoperability as of jQuery 3.0.

    var request = $.ajax( url, { dataType: "json" } ),
    chained = request.pipe(function( data ) {
    return $.ajax( url2, { data: { user: data.userId } } );
    });

    chained.done(function( data ) {
    // data retrieved from url2 as provided by the first request
    });
  • Utility method to filter and/or chain Deferreds.

    Type Parameters

    • ARD = never
    • AJD = never
    • AND = never
    • BRD = never
    • BJD = never
    • BND = never
    • CRD = never
    • CJD = never
    • CND = never
    • RRD = never
    • RJD = never
    • RND = never

    Parameters

    • doneFilter: (
          t: any,
          u: SuccessTextStatus,
          v: jqXHR,
          ...s: never[],
      ) =>
          | ARD
          | PromiseBase<ARD, AJD, AND, BRD, BJD, BND, CRD, CJD, CND, RRD, RJD, RND>
          | Thenable<ARD>

      An optional function that is called when the Deferred is resolved.

    • OptionalfailFilter: null

      An optional function that is called when the Deferred is rejected.

    • OptionalprogressFilter: null

      An optional function that is called when progress notifications are sent to the Deferred.

    Returns PromiseBase<ARD, AJD, AND, BRD, BJD, BND, CRD, CJD, CND, RRD, RJD, RND>

    <a href="https://api.jquery.com/deferred.pipe/">https://api.jquery.com/deferred.pipe/</a>

    1.6

    1.7

    ​ Deprecated since 1.8. Use <a href="index.SDK.JQueryXHR.html#then" class="tsd-kind-method">then</a>.

    Cause: The .pipe() method on a jQuery.Deferred object was deprecated as of jQuery 1.8, when the .then() method was changed to perform the same function.

    Solution: In most cases it is sufficient to change all occurrences of .pipe() to .then(). Ensure that you aren't relying on context/state propagation (e.g., using this) or synchronous callback invocation, which were dropped from .then() for Promises/A+ interoperability as of jQuery 3.0.

    var request = $.ajax( url, { dataType: "json" } ),
    chained = request.pipe(function( data ) {
    return $.ajax( url2, { data: { user: data.userId } } );
    });

    chained.done(function( data ) {
    // data retrieved from url2 as provided by the first request
    });
  • Add handlers to be called when the Deferred object generates progress notifications.

    Parameters

    • progressCallback: TypeOrArray<CallbackBase<never, never, never, never>>

      A function, or array of functions, to be called when the Deferred generates progress notifications.

    • ...progressCallbacks: TypeOrArray<CallbackBase<never, never, never, never>>[]

      Optional additional functions, or arrays of functions, to be called when the Deferred generates progress notifications.

    Returns this

    <a href="https://api.jquery.com/deferred.progress/">https://api.jquery.com/deferred.progress/</a>

    1.7

  • Return a Deferred's Promise object.

    Type Parameters

    • TTarget extends object

    Parameters

    • target: TTarget

      Object onto which the promise methods have to be attached

    Returns JQueryXHR & TTarget

    <a href="https://api.jquery.com/deferred.promise/">https://api.jquery.com/deferred.promise/</a>

    1.5

    function asyncEvent() {
    var dfd = jQuery.Deferred();

    // Resolve after a random interval
    setTimeout(function() {
    dfd.resolve( "hurray" );
    }, Math.floor( 400 + Math.random() * 2000 ) );

    // Reject after a random interval
    setTimeout(function() {
    dfd.reject( "sorry" );
    }, Math.floor( 400 + Math.random() * 2000 ) );

    // Show a "working..." message every half-second
    setTimeout(function working() {
    if ( dfd.state() === "pending" ) {
    dfd.notify( "working... " );
    setTimeout( working, 500 );
    }
    }, 1 );

    // Return the Promise so caller can't change the Deferred
    return dfd.promise();
    }

    // Attach a done, fail, and progress handler for the asyncEvent
    $.when( asyncEvent() ).then(
    function( status ) {
    alert( status + ", things are going well" );
    },
    function( status ) {
    alert( status + ", you fail this time" );
    },
    function( status ) {
    $( "body" ).append( status );
    }
    );
  • Return a Deferred's Promise object.

    Returns this

    <a href="https://api.jquery.com/deferred.promise/">https://api.jquery.com/deferred.promise/</a>

    1.5

    // Existing object
    var obj = {
    hello: function( name ) {
    alert( "Hello " + name );
    }
    },
    // Create a Deferred
    defer = $.Deferred();

    // Set object as a promise
    defer.promise( obj );

    // Resolve the deferred
    defer.resolve( "John" );

    // Use the object as a Promise
    obj.done(function( name ) {
    obj.hello( name ); // Will alert "Hello John"
    }).hello( "Karl" ); // Will alert "Hello Karl"
  • Combines a header in author request headers.

    Throws an "InvalidStateError" DOMException if either state is not opened or the send() flag is set.

    Throws a "SyntaxError" DOMException if name is not a header name or if value is not a header value.

    MDN Reference

    Parameters

    • name: string
    • value: string

    Returns void

  • Determine the current state of a Deferred object.

    Returns "pending" | "rejected" | "resolved"

    <a href="https://api.jquery.com/deferred.state/">https://api.jquery.com/deferred.state/</a>

    1.7

  • Add handlers to be called when the Deferred object is resolved, rejected, or still in progress.

    Type Parameters

    • ARD = never
    • AJD = never
    • AND = never
    • BRD = never
    • BJD = never
    • BND = never
    • CRD = never
    • CJD = never
    • CND = never
    • RRD = never
    • RJD = never
    • RND = never
    • ARF = never
    • AJF = never
    • ANF = never
    • BRF = never
    • BJF = never
    • BNF = never
    • CRF = never
    • CJF = never
    • CNF = never
    • RRF = never
    • RJF = never
    • RNF = never
    • ARP = never
    • AJP = never
    • ANP = never
    • BRP = never
    • BJP = never
    • BNP = never
    • CRP = never
    • CJP = never
    • CNP = never
    • RRP = never
    • RJP = never
    • RNP = never

    Parameters

    Returns PromiseBase<
        ARD
        | ARF
        | ARP,
        AJD | AJF | AJP,
        AND | ANF | ANP,
        BRD | BRF | BRP,
        BJD | BJF | BJP,
        BND | BNF | BNP,
        CRD | CRF | CRP,
        CJD | CJF | CJP,
        CND | CNF | CNP,
        RRD | RRF | RRP,
        RJD | RJF | RJP,
        RND | RNF | RNP,
    >

    <a href="https://api.jquery.com/deferred.then/">https://api.jquery.com/deferred.then/</a>

    1.8

    <!doctype html>
    <html lang="en">
    <head>
    <meta charset="utf-8">
    <title>deferred.then demo</title>
    <script src="https://code.jquery.com/jquery-3.3.1.js"></script>
    </head>
    <body>

    <button>Filter Resolve</button>
    <p></p>

    <script>
    var filterResolve = function() {
    var defer = $.Deferred(),
    filtered = defer.then(function( value ) {
    return value * 2;
    });

    defer.resolve( 5 );
    filtered.done(function( value ) {
    $( "p" ).html( "Value is ( 2*5 = ) 10: " + value );
    });
    };

    $( "button" ).on( "click", filterResolve );
    </script>

    </body>
    </html>
    var request = $.ajax( url, { dataType: "json" } ),
    chained = request.then(function( data ) {
    return $.ajax( url2, { data: { user: data.userId } } );
    });

    chained.done(function( data ) {
    // data retrieved from url2 as provided by the first request
    });
  • Add handlers to be called when the Deferred object is resolved, rejected, or still in progress.

    Type Parameters

    • ARF = never
    • AJF = never
    • ANF = never
    • BRF = never
    • BJF = never
    • BNF = never
    • CRF = never
    • CJF = never
    • CNF = never
    • RRF = never
    • RJF = never
    • RNF = never
    • ARP = never
    • AJP = never
    • ANP = never
    • BRP = never
    • BJP = never
    • BNP = never
    • CRP = never
    • CJP = never
    • CNP = never
    • RRP = never
    • RJP = never
    • RNP = never

    Parameters

    Returns PromiseBase<
        ARF
        | ARP,
        AJF | AJP,
        ANF | ANP,
        BRF | BRP,
        BJF | BJP,
        BNF | BNP,
        CRF | CRP,
        CJF | CJP,
        CNF | CNP,
        RRF | RRP,
        RJF | RJP,
        RNF | RNP,
    >

    <a href="https://api.jquery.com/deferred.then/">https://api.jquery.com/deferred.then/</a>

    1.8

    var request = $.ajax( url, { dataType: "json" } ),
    chained = request.then(function( data ) {
    return $.ajax( url2, { data: { user: data.userId } } );
    });

    chained.done(function( data ) {
    // data retrieved from url2 as provided by the first request
    });
  • Add handlers to be called when the Deferred object is resolved, rejected, or still in progress.

    Type Parameters

    • ARD = never
    • AJD = never
    • AND = never
    • BRD = never
    • BJD = never
    • BND = never
    • CRD = never
    • CJD = never
    • CND = never
    • RRD = never
    • RJD = never
    • RND = never
    • ARP = never
    • AJP = never
    • ANP = never
    • BRP = never
    • BJP = never
    • BNP = never
    • CRP = never
    • CJP = never
    • CNP = never
    • RRP = never
    • RJP = never
    • RNP = never

    Parameters

    Returns PromiseBase<
        ARD
        | ARP,
        AJD | AJP,
        AND | ANP,
        BRD | BRP,
        BJD | BJP,
        BND | BNP,
        CRD | CRP,
        CJD | CJP,
        CND | CNP,
        RRD | RRP,
        RJD | RJP,
        RND | RNP,
    >

    <a href="https://api.jquery.com/deferred.then/">https://api.jquery.com/deferred.then/</a>

    1.8

    var request = $.ajax( url, { dataType: "json" } ),
    chained = request.then(function( data ) {
    return $.ajax( url2, { data: { user: data.userId } } );
    });

    chained.done(function( data ) {
    // data retrieved from url2 as provided by the first request
    });
  • Add handlers to be called when the Deferred object is resolved, rejected, or still in progress.

    Type Parameters

    • ARP = never
    • AJP = never
    • ANP = never
    • BRP = never
    • BJP = never
    • BNP = never
    • CRP = never
    • CJP = never
    • CNP = never
    • RRP = never
    • RJP = never
    • RNP = never

    Parameters

    • doneFilter: null

      An optional function that is called when the Deferred is resolved.

    • failFilter: null

      An optional function that is called when the Deferred is rejected.

    • OptionalprogressFilter: (
          t: never,
          u: never,
          v: never,
          ...s: never[],
      ) =>
          | ANP
          | PromiseBase<ARP, AJP, ANP, BRP, BJP, BNP, CRP, CJP, CNP, RRP, RJP, RNP>
          | Thenable<ANP>

      An optional function that is called when progress notifications are sent to the Deferred.

    Returns PromiseBase<ARP, AJP, ANP, BRP, BJP, BNP, CRP, CJP, CNP, RRP, RJP, RNP>

    <a href="https://api.jquery.com/deferred.then/">https://api.jquery.com/deferred.then/</a>

    1.8

    var request = $.ajax( url, { dataType: "json" } ),
    chained = request.then(function( data ) {
    return $.ajax( url2, { data: { user: data.userId } } );
    });

    chained.done(function( data ) {
    // data retrieved from url2 as provided by the first request
    });
  • Add handlers to be called when the Deferred object is resolved, rejected, or still in progress.

    Type Parameters

    • ARD = never
    • AJD = never
    • AND = never
    • BRD = never
    • BJD = never
    • BND = never
    • CRD = never
    • CJD = never
    • CND = never
    • RRD = never
    • RJD = never
    • RND = never
    • ARF = never
    • AJF = never
    • ANF = never
    • BRF = never
    • BJF = never
    • BNF = never
    • CRF = never
    • CJF = never
    • CNF = never
    • RRF = never
    • RJF = never
    • RNF = never

    Parameters

    Returns PromiseBase<
        ARD
        | ARF,
        AJD | AJF,
        AND | ANF,
        BRD | BRF,
        BJD | BJF,
        BND | BNF,
        CRD | CRF,
        CJD | CJF,
        CND | CNF,
        RRD | RRF,
        RJD | RJF,
        RND | RNF,
    >

    <a href="https://api.jquery.com/deferred.then/">https://api.jquery.com/deferred.then/</a>

    1.8

    <!doctype html>
    <html lang="en">
    <head>
    <meta charset="utf-8">
    <title>deferred.then demo</title>
    <script src="https://code.jquery.com/jquery-3.3.1.js"></script>
    </head>
    <body>

    <button>Filter Resolve</button>
    <p></p>

    <script>
    var filterResolve = function() {
    var defer = $.Deferred(),
    filtered = defer.then(function( value ) {
    return value * 2;
    });

    defer.resolve( 5 );
    filtered.done(function( value ) {
    $( "p" ).html( "Value is ( 2*5 = ) 10: " + value );
    });
    };

    $( "button" ).on( "click", filterResolve );
    </script>

    </body>
    </html>
    var request = $.ajax( url, { dataType: "json" } ),
    chained = request.then(function( data ) {
    return $.ajax( url2, { data: { user: data.userId } } );
    });

    chained.done(function( data ) {
    // data retrieved from url2 as provided by the first request
    });
  • Add handlers to be called when the Deferred object is resolved, rejected, or still in progress.

    Type Parameters

    • ARF = never
    • AJF = never
    • ANF = never
    • BRF = never
    • BJF = never
    • BNF = never
    • CRF = never
    • CJF = never
    • CNF = never
    • RRF = never
    • RJF = never
    • RNF = never

    Parameters

    • doneFilter: null

      An optional function that is called when the Deferred is resolved.

    • failFilter: (
          t: jqXHR,
          u: ErrorTextStatus,
          v: string,
          ...s: never[],
      ) =>
          | ARF
          | PromiseBase<ARF, AJF, ANF, BRF, BJF, BNF, CRF, CJF, CNF, RRF, RJF, RNF>
          | Thenable<ARF>

      An optional function that is called when the Deferred is rejected.

    • OptionalprogressFilter: null

      An optional function that is called when progress notifications are sent to the Deferred.

    Returns PromiseBase<ARF, AJF, ANF, BRF, BJF, BNF, CRF, CJF, CNF, RRF, RJF, RNF>

    <a href="https://api.jquery.com/deferred.then/">https://api.jquery.com/deferred.then/</a>

    1.8

    var request = $.ajax( url, { dataType: "json" } ),
    chained = request.then(function( data ) {
    return $.ajax( url2, { data: { user: data.userId } } );
    });

    chained.done(function( data ) {
    // data retrieved from url2 as provided by the first request
    });
  • Add handlers to be called when the Deferred object is resolved, rejected, or still in progress.

    Type Parameters

    • ARD = never
    • AJD = never
    • AND = never
    • BRD = never
    • BJD = never
    • BND = never
    • CRD = never
    • CJD = never
    • CND = never
    • RRD = never
    • RJD = never
    • RND = never

    Parameters

    • doneFilter: (
          t: any,
          u: SuccessTextStatus,
          v: jqXHR,
          ...s: never[],
      ) =>
          | ARD
          | PromiseBase<ARD, AJD, AND, BRD, BJD, BND, CRD, CJD, CND, RRD, RJD, RND>
          | Thenable<ARD>

      An optional function that is called when the Deferred is resolved.

    • OptionalfailFilter: null

      An optional function that is called when the Deferred is rejected.

    • OptionalprogressFilter: null

      An optional function that is called when progress notifications are sent to the Deferred.

    Returns PromiseBase<ARD, AJD, AND, BRD, BJD, BND, CRD, CJD, CND, RRD, RJD, RND>

    <a href="https://api.jquery.com/deferred.then/">https://api.jquery.com/deferred.then/</a>

    1.8

    var request = $.ajax( url, { dataType: "json" } ),
    chained = request.then(function( data ) {
    return $.ajax( url2, { data: { user: data.userId } } );
    });

    chained.done(function( data ) {
    // data retrieved from url2 as provided by the first request
    });