Người mới ở đây. Vấn đề là tôi hiện đã viết một phương pháp kiểm tra kích thước và phần mở rộng của tệp được tải lên để xác thực nó. Tuy nhiên, việc kiểm tra các phần mở rộng không phải là một giải pháp vì loại xác thực đó có thể gây ra nhiều vấn đề. Những gì tôi muốn làm là kiểm tra loại tệp thực và xác thực nó mà không sử dụng phương pháp mở rộng. Tôi đã cố gắng sử dụng jQuery file validator nhưng không có kết quả ... Đây là một đoạn trích từ mã hiện tại của tôi:jQuery cách kiểm tra xem tệp đã tải lên có phải là hình ảnh mà không kiểm tra tiện ích mở rộng không?
<input type='file' id='imageLoader' name='imageLoader' accept="image/*" data-type='image' />
Script:
App.Dispatcher.on("uploadpic", function() {
$(":file").change(function() {
if (this.files && this.files[0] && this.files[0].name.match(/\.(jpg|jpeg|png|gif)$/)) {
if(this.files[0].size>1048576) {
alert('File size is larger than 1MB!');
}
else {
var reader = new FileReader();
reader.onload = imageIsLoaded;
reader.readAsDataURL(this.files[0]);
}
} else alert('This is not an image file!');
});
function imageIsLoaded(e) {
result = e.target.result;
$('#image').attr('src', result);
};
});
Nó được gọi là một lần thay đổi upload đầu vào và sau khi xác nhận nó tải lên và hiển thị hình ảnh. Hiện tại, tôi chỉ quan tâm đến việc xác thực và bất kỳ trợ giúp hoặc ý tưởng nào sẽ được đánh giá cao!
Chúa ơi, tại sao tôi không nghĩ về điều này? Vì vậy, đơn giản, nhưng hoạt động perefectly, cảm ơn bạn! – Acallar
Bạn không nên sử dụng chữ in hoa để bắt đầu tên biến trong Javascript. –
Khi tôi thử tương tự cho các tệp mở rộng docx thì loại tệp trống. Bạn có thể nói tại sao nó là và làm thế nào tôi có thể kiểm tra này? – Varinder