Кратко
СкопированоАтрибут accept
добавляется тегу <input>
. Он позволяет указать, файлы какого типа пользователю нужно прикрепить.
Пример
Скопировано<form method="post"> <label for="cat-picture">Прикрепите фото кота</label> <input type="file" id="cat-picture" name="cat-picture" accept=".jpg, .jpeg, .png" > <button>Прикрепить</button></form>
<form method="post"> <label for="cat-picture">Прикрепите фото кота</label> <input type="file" id="cat-picture" name="cat-picture" accept=".jpg, .jpeg, .png" > <button>Прикрепить</button> </form>
Как пишется
СкопированоАтрибут accept
может принимать строку значений:
'audio
— принимает звуковые файлы любого формата./ *' 'video
— принимает видео любого формата./ *' 'image
— принимает изображения любого формата./ *' - Строка типа MIME без расширений.
- Расширения файла, перед которыми стоит точка. Например:
.jpg
,.pdf
,.docx
и так далее.
Можно указать несколько значений, а ещё их можно сочетать, например:
<input type="file" name="cat-pic-video" accept="video/*, .jpg, .jpeg, .png">
<input type="file" name="cat-pic-video" accept="video/*, .jpg, .jpeg, .png">
Как понять
СкопированоВажно понимать, что атрибут accept
лишь показывает пользователю в открывшемся диалоговом окне файлы типов, которые вы указываете в значении атрибута, но не фильтрует их. Проверка типов файлов должна происходить на стороне сервера. Без этого ничто не помешает пользователю прикрепить скучный текстовый документ, хотя вы ждали фото котика.
Подсказки
Скопировано💡 Что делать, если у пользователя несколько котов и он хочет показать вам всех? Поможет атрибут multiple
.