Đây là HTML để tải lên hình ảnh. Theo mặc định, nó sẽ chỉ hiển thị các tệp hình ảnh trong cửa sổ duyệt vì chúng tôi đã đặt accept="image/*"
. Nhưng chúng ta vẫn có thể thay đổi nó từ danh sách thả xuống và nó sẽ hiển thị tất cả các tệp. Vì vậy, phần Javascript xác thực xem tệp đã chọn có phải là hình ảnh thực tế hay không.
<div class="col-sm-8 img-upload-section">
<input name="image3" type="file" accept="image/*" id="menu_images"/>
<img id="menu_image" class="preview_img" />
<input type="submit" value="Submit" />
</div>
Ở đây về sự kiện thay đổi, trước tiên chúng tôi kiểm tra kích thước của hình ảnh. Và trong if
điều kiện thứ hai, chúng tôi kiểm tra xem đó có phải là tệp hình ảnh hay không.
this.files[0].type.indexOf("image")
sẽ là -1
nếu nó không phải là một tập tin hình ảnh.
document.getElementById("menu_images").onchange = function () {
var reader = new FileReader();
if(this.files[0].size>528385){
alert("Image Size should not be greater than 500Kb");
$("#menu_image").attr("src","blank");
$("#menu_image").hide();
$('#menu_images').wrap('<form>').closest('form').get(0).reset();
$('#menu_images').unwrap();
return false;
}
if(this.files[0].type.indexOf("image")==-1){
alert("Invalid Type");
$("#menu_image").attr("src","blank");
$("#menu_image").hide();
$('#menu_images').wrap('<form>').closest('form').get(0).reset();
$('#menu_images').unwrap();
return false;
}
reader.onload = function (e) {
// get loaded data and render thumbnail.
document.getElementById("menu_image").src = e.target.result;
$("#menu_image").show();
};
// read the image file as a data URL.
reader.readAsDataURL(this.files[0]);
};