Використовуйте атрибут accept тегу введення. Тому для прийняття лише PNG, JPEG та GIF можна використовувати наступний код:
<input type="file" name="myImage" accept="image/x-png,image/gif,image/jpeg" />
Або просто:
<input type="file" name="myImage" accept="image/*" />
Зауважте, що це дає лише підказку веб-переглядачу про те, які типи файлів відображати користувачеві, але це можна легко обійти, тому завжди слід перевірити також завантажений файл на сервері.
Він повинен працювати в IE 10+, Chrome, Firefox, Safari 6+, Opera 15+, але підтримка є дуже схематичною на мобільних телефонах (станом на 2015 рік), і, за деякими звітами, це фактично може перешкоджати деяким мобільним браузерам завантажувати що-небудь взагалі, тому не забудьте добре протестувати цільові платформи.
Детальну підтримку браузера див. На веб-сайті http://caniuse.com/#feat=input-file-accept