Попытка получить размер файла, когда пользователь загружает файл. Когда пользователь нажимает кнопку обзора, чтобы загрузить файл, но вместо этого нажимает кнопку отмены. Тип файла выдает ошибку undefined.
Я пытался использовать typeof, чтобы проверить состояние файла не определено, но это не работает. Нужна помощь, чтобы поймать ошибку.
$('#fileupload-image').change(function() {
$('#select_file').hide();
$('#upload_image_button').slideDown('fast');
var filename = $(this).val();
if(typeof this.files[0].size == 'undefined')
{
this.files[0].size = '';
}
else
{
var filesize = this.files[0].size;
}
3 ответа
Другая возможность:
var filesize = (this.files.length && this.files[0].size) || '';
Используйте проверку this.files.length> 0 вместо проверки, не определена ли она. Кроме того, если вы проверяете, не определено ли оно, вы также не захотите использовать одинарные кавычки.
Прежде всего, я не думаю, что вы на самом деле хотите установить this.files[0].size = '';
.
Вот одна из возможностей, используя try / catch, чтобы забыть все о проверке типов:
var filesize = '';
try {
filesize = this.files[0].size;
}
catch {}
Похожие вопросы
Новые вопросы
javascript
По вопросам программирования на ECMAScript (JavaScript / JS) и его различных диалектах / реализациях (кроме ActionScript). Включите все соответствующие теги в свой вопрос; например, [node.js], [jquery], [json] и т. д.