我正在尝试为我的网站创建简单的图片上传器,但我遇到了一个问题。当我想将我的新图像添加到以前选择的图像时,不能保存旧的选择图像(因为创建了新的 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");
});
}
});