JSFiddle - React, Tailwind, and code Playground
by Vetrivel Samidurai
HTML
<div id="wrapper" style="margin-top:20px;">
<input id="fileUpload1" alt="1" class="fileUpload" type="file" multiple />
<br />
<div id="image-holder1" class="1"></div>
<input id="fileUpload2" alt="2" class="fileUpload" type="file" multiple />
<br />
<div id="image-holder2" class="2" ></div>
</div>
CSS
.thumb-image {
float:left;
width:100px;
position:relative;
padding:5px;
}
JavaScript
$(".fileUpload").on('change', function () {
var pos = $(this).attr('alt');
//alert(pos);
//Get count of selected files
var countFiles = $(this)[0].files.length;
var imgPath = $(this)[0].value;
var extn = imgPath.substring(imgPath.lastIndexOf('.') + 1).toLowerCase();
var image_holder = $("#image-holder"+pos);
image_holder.empty();
if (extn == "gif" || extn == "png" || extn == "jpg" || extn == "jpeg") {
if (typeof (FileReader) != "undefined") {
//loop for each file selected for uploaded.
for (var i = 0; i < countFiles; i++) {
var reader = new FileReader();
reader.onload = function (e) {
$("<img />", {
"src": e.target.result,
"class": "thumb-image"
}).appendTo(image_holder);
}
image_holder.show();
reader.readAsDataURL($(this)[0].files[i]);
}
} else {
alert("This browser does not support FileReader.");
}
} else {
alert("Pls select only images");
}
});