Ở đây tôi đã làm với jQuery bằng API FileReader.
Đánh dấu Html:
<input id="fileUpload" type="file" multiple />
<div id="image-holder"></div>
jQuery:
Ở đây trong mã jQuery, đầu tiên tôi kiểm tra phần mở rộng tệp. tức là tệp hình ảnh hợp lệ sẽ được xử lý, sau đó sẽ kiểm tra xem trình duyệt hỗ trợ API FileReader có hay không, chỉ xử lý khác hiển thị thông báo được tôn trọng
$("#fileUpload").on('change', function () {
//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");
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");
}
});
Bài viết chi tiết: Cách xem trước hình ảnh trước khi tải lên, jQuery, HTML5 FileReader () với Live Demo