jQuery ajax,使用输入类型文件和Json发送表单

Clé*_*aud 6 ajax jquery file

我有一个带有几个输入和其他字段的表单.

我有一个保存按钮,当我点击时,我发送带有jQuery的ajax表单:

$.ajax({
        type:       "POST",
        dataType:   "json",
        url:        $('#ajaxUrl').val(),
        data:       "action=save&" + form.serialize()
});
Run Code Online (Sandbox Code Playgroud)

所以,当我只有像文本这样的简单输入时,选择等等.没关系.但如果我有一个输入类型文件,我无法检索我的文件.$ _FILES始终为空.

我怎样才能尽可能简单地做到这一点?

编辑:我不想使用插件:)

Lef*_*tyX 0

我使用过这个jQuery 插件,它具有上传文件的功能。

HTML:

<form action="file-echo2.php" method="post" enctype="multipart/form-data">
    <input type="file" name="myfile"><br>
    <input type="submit" value="Upload File to Server">
</form>
Run Code Online (Sandbox Code Playgroud)

JavaScript 脚本:

$('form').ajaxForm({
    beforeSend: function() {

    },
    uploadProgress: function(event, position, total, percentComplete) {

    },
    success: function() {

    },
    complete: function(xhr) {

    }
});
Run Code Online (Sandbox Code Playgroud)