jQuery上传文件返回空

时间:2016-01-25 18:36:36

标签: javascript jquery .net

我正在尝试通过jQuery上传文件,我将使用ajax传递给.NET

以下是我在jQuery方面的内容:

$("#attachmentItem-" + this.id).html('<input type="file" name="file" id="file-' + this.id + '" /><br/><input type="submit" value="Upload File" id="upload-' + this.id + '" />');
var id = this.id;
$("input[id=upload-" + this.id + "]").bind('click', function () {
    var formData = new FormData();
    var totalFiles = document.getElementById("file-" + id).files.length;
    for (var i = 0; i < totalFiles; i++) {
        var file = document.getElementById("file-" + id).files[i];
        console.log(file);
        formData.append("file-" + id, file);
    }
    console.log(formData);
});

formData返回FormData {},文件返回File {},我不知道为什么。

1 个答案:

答案 0 :(得分:1)

您的代码正确附加到FormData对象,但您在代码中缺少用于获取formData变量的值。只需替换:

console.log(formData);

用这个:

console.log(formData.getAll("file-0")); //Assuming 0 is one of your IDs

您看,FormData不是javascript Object,您可以将其写入控制台。它是browser built-in Object,因此需要按原样处理。