Как отследить отмену выбора файла в input=file в jq?

Рейтинг: 0Ответов: 1Опубликовано: 14.08.2023

Всем привет. Вопрос вот такой. Есть задача, где хочу накинуть стили валидации на инпут файла. В общем при событии change проверяю параметры файла и добавляю классы, но обнаружил, что если я выбрал файл, а потом его отменил, т.е. нажимаю выбрать файл и после отмена, в инпуте написано «файл не выбран», а стиль валидации продолжает висеть. Не могу понять как можно отследить это событие? Попробовал через аутфокус, но тогда, нужно чтобы пользователь кликнул мимо, а хотелось бы при отмене выбранного файла сразу… пробовал в событие change добавить проверку на val()==“” не работает… подскажите пожалуйста как решить эту проблему?

ПС: пишу с телефона, поэтому в таком формате без кода, сори(

Ответы

▲ 0

Пример, как отследить отмену выбора файлов в input элементе c помощью jQuery, используя событие change:

<input id="file-input" type="file">
$(document).ready(function() {
  $('#file-input').on('change', function() {
    if ($(this).prop('files').length === 0) {
      console.log('Выбор файла отменен');
    } else {
      console.log('Файл выбран');
    }
  });
});

Если выбор файла отменен, files свойство будет пустым.