Совершенно новый для JS.
Я пытаюсь проверить, пуст ли элемент ввода файла при отправке формы с помощью jQuery / JavaScript. Я прошел через кучу решений, и у меня ничего не работает. Я пытаюсь избежать /c/fakepath
(если нет другого варианта)
<input type="file" name="videoFile" id="videoUploadFile" />
Это не работает:
var vidFile = $("#videoUploadFile").value;
Единственный способ получить имя файла - это использовать следующее:
var vidFile = document.getElementById("videoUploadFile").files[0].name;
Если файл недоступен, код выдает ошибку:
не может прочитать имя свойства undefined
что имеет смысл, потому что массив не установлен. но я не могу понять, как с этим справиться.
Как мне правильно захватить элемент ввода файла videoUploadFile
, проверить, пуст ли он, выдать сообщение об ошибке, если он пуст?
javascript
jquery
html
user3753569
источник
источник
.files.length
?var files = $('#formbody').find('input[type=file]').filter(function() { return $(this)[0].files.length > 0; });
Ответы:
Просто проверьте свойство length of files , которое является объектом FileList, содержащимся во входном элементе.
источник
( document.getElementById("videoUploadFile").files.length === 0 )
Вот его версия jQuery:
источник
$('#videoUploadFile').get(0)
то же самое,$('#videoUploadFile')[0]
но, возможно,get()
делает некоторые проверки вменяемостиЧтобы проверить, является ли входной файл пустым, используя свойство длины файла,
index
необходимо указать следующее:источник
Я знаю, что опаздываю на вечеринку, но я подумал, что добавлю то, что в итоге использовал для этого, - просто проверить, не содержит ли ввод для загрузки файла истинное значение с помощью оператора not и JQuery, например:
Обратите внимание, что если это находится в форме, вы также можете обернуть его следующим обработчиком, чтобы предотвратить отправку формы:
источник
Вопросы: как проверить, что файл пуст или нет?
Ответ: я решил эту проблему, используя этот код JQuery.
источник