Level 24
just make a sample, i don't know if this you looking for
sample page : http://os33.atwebpages.com/multiple_upload_image_preview.html
<div class="container w-50">
<img class="border border-dark rounded" data-preview="p1" src="/default_avatar.png" width="170" height="170">
<h6 data-file-name="p1"></h6>
<label class="btn btn-secondary" for="p1">
<input type="file" id="p1" name="file[]" accept=".jpg" style="display:none">
Upload
</label>
<br><br>
<img class="border border-dark rounded" data-preview="p2" src="/default_avatar.png" width="170" height="170">
<h6 data-file-name="p2"></h6>
<label class="btn btn-secondary" for="p2">
<input type="file" id="p2" name="file[]" accept=".jpg" style="display:none">
Upload
</label>
</div>
<script type="text/javascript">
$(function() {
$('input[type=file]').change(function() {
var id = $(this).attr('id');
var uploadFileName = this.files[0].name;
var strLimit = 20;
//
// prevent a long string file name
//
if (uploadFileName.length > strLimit) {
var endOfFileName = uploadFileName.substr( (uploadFileName.lastIndexOf('.') -2) );
var startOfFileName = uploadFileName.substr(0, (strLimit - endOfFileName.length - 3));
uploadFileName = startOfFileName+"..."+endOfFileName;
}
//
// show file name
//
$('[data-file-name="' + id + '"]').html(uploadFileName);
//
// show image preview
//
var reader = new FileReader();
reader.readAsDataURL(this.files[0]);
reader.onload = function(e) {
$('[data-preview="' + id + '"]').attr('src', e.target.result);
};
});
});
</script>