2012-06-19 33 views
22

Duplicar posibles:
Limit file format when using <input type=“file”>?Cómo validar en HTML5 para permitir solo en 'input type = "file"' JPG, GIF o PNG?

Tengo que utilizar el atributo HTML 5 pattern para permitir sólo los archivos PNG JPG, GIF y en un elemento de <input type="file">.

que actualmente tienen este patrón, pero no está funcionando:

<input type="file" class="input-file" id="tbinstUploadFile0" name="tbinstUploadFile0" placeholder="Please insert an image file..." pattern="([^\s]+(\.(?i)(jpg|png|gif|bmp))$)"> 

Este patrón de expresión no es compatible con HTML 5? ¿Cómo puedo probar patrones de expresiones regulares de HTML5 válidos?

Best Regards,

+2

consulte Aceptar en la especificación HTML 5: http://dev.w3.org/html5/ spec/states-of-the-type-attribute.html # attr-input-accept – Qtax

Respuesta

37

intentar algo así como

<input type="file" name="my-image" id="image" accept="image/gif, image/jpeg, image/png" /> 

Haga clic here for the latest browser compatibility table

Demostración en directo here

para seleccionar sólo los archivos de imagen, se puede utilizar esta accept="image/*"

<input type="file" name="my-image" id="image" accept="image/*" /> 

Demostración en directo here

Only gif, jpg and png will be shown, screen grab from Chrome version 44 Sólo gif, se le aparecen JPG y PNG, captura de pantalla de la versión Chrome 44

+0

No es compatible con Firefox 12. Gracias por la respuesta. –

+2

solo funciona en Chrome a finales de 2013. – Rudy

+1

Si agrego esta etiqueta ('accept =" image/jpg, image/jpeg, image/png "') a 'input', me muestra todos los tipos de archivos en Firefox, donde como si simplemente mantuviera 'accept =" image/* "', funciona. Solo quiero que el usuario seleccione el formato 'jpg, jpeg' y' png'. – sahil

Cuestiones relacionadas