Comment puis-je télécharger des fichiers de manière asynchrone?

Je voudrais télécharger un fichier en mode asynchrone avec jQuery. C'est mon code HTML:

<span>File</span>
<input type="file" id="file" name="file" size="10"/>
<input id="uploadbutton" type="button" value="Upload"/>

Et voici mon Jquery code:

$(document).ready(function () {
    $("#uploadbutton").click(function () {
        var filename = $("#file").val();

        $.ajax({
            type: "POST",
            url: "addFile.do",
            enctype: 'multipart/form-data',
            data: {
                file: filename
            },
            success: function () {
                alert("Data Uploaded: ");
            }
        });
    });
});

À la place du fichier en cours de téléchargement, je ne suis qu'à obtenir le nom de fichier. Que puis-je faire pour résoudre ce problème?

Solution Actuelle

Je suis en utilisant le jQuery Forme de Plugin de téléchargement de fichiers.