jquery将文件对象添加到FileList对象

时间:2017-03-10 14:10:13

标签: jquery object filelist

我正在尝试为我的网站创建简单的图片上传器,但我有一个问题。当我想将我的新图像添加到以前选择的图像时,无法保存旧的所选图像(因为创建了新的FileList对象)然后将它们全部发送到我的控制器并将我的问题发回,将旧的“文件对象”添加到新的'FileList对象。 HTML:

<div id="filediv">
    <input type="file" id="file" name="files[]" multiple="multiple" />
</div>

脚本:

window.filesToUpload = [];
window.tmp = [];
$("#file").on('change', function () {
    "use strict";

    if (window.filesToUpload.length > 0) {
        $.each(window.tmp, function (i, img) {

我想将旧文件对象添加到新的FileList对象

        });
    }

    if (this.files.length >= 1) {
        $("[id^=previewImg]").remove();
        $.each(this.files, function (i, img) {
            window.tmp.push(img);

            var reader = new FileReader(),
                newElement = $("<div id='previewImg" + i + "' class='abcd'><img /></div>"),
                preview = newElement.find("img");

            reader.onloadend = function () {
                preview.attr("src", reader.result);
                preview.attr("alt", img.name);
            };

            try {
                window.filesToUpload.push(document.getElementById("file").files[i]);
            } catch (e) {
                console.log(e.message);
            }

            if (img) {
                reader.readAsDataURL(img);
            } else {
                preview.src = "";
            }


            newElement.appendTo("#filediv");
        });
    }
});

0 个答案:

没有答案