Returning das HTML von .ajax Aufruf

Ich werde aus irgendeinem Grund undefiniert, wenn ich versuche, das HTML über die Rückruffunktion zurückzugeben:

function getDataFromUrl(urlWithContent)
{  
    // jQuery async request
    $.ajax(
    {
        url: urlWithContent,
        dataType: "html",
        success: function(data) {
                                    return $('.result').html(data);
                                },
        error: function(e) 
        {
            alert('Error: ' + e);
        }
    });
}

Ich weiß, dass ich Daten zurückerhalte. Ich sehe es in der Antwort als Firebug. Und auch wenn ich die Daten alarmiere, sehe ich den gesamten Seiteninhalt in der Alarmbox.

Wenn ich meine Funktion aufrufe, mache ich Folgendes:

var divContent = getDataFromUrl(dialogDiv.attr("href"));

if(divContent)
    dialogDiv.innerHTML = divContent;

wenn ich den divContent (vor der if-Anweisung) alarmiere, werde ich undefiniert. Vielleicht gehe ich einfach so falsch vor, wie ich die Daten zurückgebe?

Ich habe auch versucht, nur Daten zurückzugeben; Gleichermaßen werde ich nach dem Aufruf dieser Methode undefiniert, wenn ich sie auf meine Variable setze.

Aktualisiert nach Antworten:

Tried dies, immer noch undefiniert:

function getDataFromUrl(urlWithContent, divToUpdate)
{  
    $.ajax(
    {
        url: urlWithContent,
        aSync: false,
        dataType: "html",
        success: function(data) {
                                    divToUpdate.innerHTML = data;
                                },
        error: function(e) 
        {
            alert('Error: ' + e);
        }
    });
}

Ich habe es in einer anderen Funktion wie dieser aufgerufen:

var divContent = "";

if (dialogDiv.attr("href"))
{
    getDataFromUrl(dialogDiv.attr("href"), divContent);
}

Antworten auf die Frage(3)

Ihre Antwort auf die Frage