jquery Die Eigenschaft 'done' von undefined kann nicht gelesen werden - vermeiden Sie dies

Ich habe eine Funktion, die Ergebnisse zurückgibt (oder nicht). Das Problem ist, wenn es keinen Wert zurückgibt, bekomme ich in der Konsole die Meldung

kann die Eigenschaft 'done' von undefined nicht lesen

Welches ist wahr und ich verstehe das Problem. Auch dieser Fehler lässt meinen Code nicht mehr funktionieren, aber ich würde gerne wissen, ob es eine Chance gibt, dies zu vermeiden.

Die Funktion in Ajax ist:

function getDelivery(){
    var items = new Array();

    $("#tab-delivery tr").each(function(){
        items.push({"id" : $(this).find('.form-control').attr('id'), "id_option" : $(this).find('.form-control').val()});
    });

    if(items.length > 0){
        return $.ajax({
            url: 'response.php?type=getDelivery',
            type: 'POST',
            data: {content: items}
        });
    }
}

Und um es zu nennen, benutze ich:

getDelivery().done(function(data){ // the problem is here
    if(data == false){
        return;
    }
});

Gibt es eine Möglichkeit, den Fehler zu vermeiden? Ich habe folgendes erfolglos versucht:

if(items.length > 0){
    return $.ajax({
        url: 'response.php?type=getDelivery',
        type: 'POST',
        data: {content: items}
    });
}else{
    return false;
}

Und ich bekomme den Fehler:

Nicht erfasster TypeError: undefined ist keine Funktion

Antworten auf die Frage(1)

Ihre Antwort auf die Frage