【发布时间】:2018-04-12 01:47:54
【问题描述】:
我是脚本新手。我有一个要添加多个的输入文件。上传图片后,每张图片的名称将与叉号一起显示,以便用户可以删除或添加更多图片。我还有一个预览容器来显示上传图像预览,每当用户添加或删除任何图像时我希望更新它。
演示:
https://codepen.io/alikhan999/pen/oqOLqP
脚本
$(document).ready(function() {
var bgRendered;
$('#PageBGimageBtn').on('change', function(){
if( $(this).val().length ){
var BGimageBtn = $(this);
var inputFiles = this.files;
//var inputFile = inputFiles[0];
$(inputFiles).each(function(index) {
var inputFile = inputFiles[index];
if( inputFile.size < 2000000) {
if ( inputFile.type === 'image/jpeg' || inputFile.type === 'image/png' || inputFile.type === 'image/gif' ) {
var BGcontainer = '<div id="BG-'+index+'" class="imgName"><span>'+inputFile.name+'</span><i class="fas fa-times"></i></div>';
$(BGimageBtn).closest('.uploadBtn').append(BGcontainer);
var reader = new FileReader();
reader.readAsDataURL(inputFile);
reader.onloadend = function(){
bgRendered = URL.createObjectURL(inputFile);
var slideRendered = '<div id="slideBG-'+index+'" style="background-image:url('+bgRendered+')"></div>';
$('#background').append(slideRendered);
};
} else {
alert('Only Image files are allowed');
}
} else {
alert('Image should be less than 2MB');
}
});
}
});
});
问题:
- 既然是多次上传,那么如何提醒用户哪个文件的文件扩展名无效或超出文件大小限制。
- 我不知道如何在单击名称时删除特定图像,以及如何在用户添加或删除任何图像时相应地更新预览部分。
【问题讨论】:
标签: jquery filereader