De forma predeterminada, puede seleccionar todo tipo de archivos, cómo restringirlo para que solo pueda seleccionar archivos .pdf
?Cómo restringir <input type = "file"> para que solo pueda seleccionar archivos .pdf?
Respuesta
Puede usar el atributo accept en su formulario para sugerir al navegador que restrinja ciertos tipos. Sin embargo, querrás volver a validar tu código del lado del servidor para asegurarte. Nunca confíes en lo que el cliente te envía.
En pocas palabras: no se puede usar el html simple y javascript. Lo más cercano que puede obtener es probar la extensión del archivo usando javascript antes de enviar el formulario y mostrar algún mensaje de error al usuario si es distinto de .pdf
. Es posible que necesite utilizar alguna solución del lado del cliente, como los controles de carga de Flash, si desea lograr esto.
No puede usar JavaScript para soltar el archivo en función de su extensión? –
@ Šime Vidas, sí, javascript podría usarse para probar la extensión del archivo seleccionado. –
más explícita ...
<input type="file" accept="application/pdf" />
¿Por qué esto NO funciona cuando la PC no tiene Adobe Reader instalado? Me sucedió hoy ... –
- 1. ¿Cómo seleccionar múltiples archivos con <input type = "file">?
- 2. Cómo permitir que <input type = "file"> acepte solo archivos de imagen
- 3. Selector CSS para <input type = "?"
- 4. Comprensión <input type = "file">
- 5. ¿Cómo hacer que <input type = "file" /> editable?
- 6. Cómo restringir mi entrada type = "file" para aceptar solo archivos de imagen png que no funcionan en Firefox
- 7. modelo de caja inconsistente entre <input type = "submit" /> y <type = "text" input />
- 8. Leyendo archivos locales con <input type = "file">?
- 9. Diferencia entre <input type = 'button' /> y <input type = 'submit' />
- 10. ¿Puede EditorFor() usarse para crear <input type = "file">?
- 11. HTML <input type = 'archivo'> Selección archivo de eventos
- 12. HTML <input type = 'archivo'> aplicar un filtro
- 13. <input type = "file"> límite de archivos seleccionables por extensiones
- 14. ¿Cómo puedo agregar relleno a <input type = "button">?
- 15. Cómo crear <input type = "text" /> dinámicamente
- 16. Cómo estilo <input type = "text"> en IE6 CSS?
- 17. Html helper for <input type = "file" />
- 18. detectar si <input type = "archivo" /> se apoya
- 19. ¿Podemos cambiar <input type = "file"> style?
- 20. ¿Está bien usar <input type = "tel" /> ahora?
- 21. Restringir atributo personalizado para que se pueda aplicar solo a tipos específicos en C#?
- 22. Como hacer <span> la misma altura que <input type = "text">
- 23. input type = "url" para URL relativas
- 24. jQuery set <input type = "range"> value
- 25. <input type = "file"> - custom styles/css
- 26. Relleno adicional en <input type = "text">
- 27. Poner en valor por defecto <input type = archivo ....>
- 28. Cómo seleccionar <input> que no tiene un "tipo" con CSS
- 29. Cómo validar en HTML5 para permitir solo en 'input type = "file"' JPG, GIF o PNG?
- 30. Cómo registrarse para eventos de cambio de valor en <input type = date> en iOS
posible duplicado de [campo de entrada de archivo HTML con los tipos de archivos limitados?] (Http://stackoverflow.com/questions/1240934/html-file-input-field- with-limited-file-types) – marcog
De parte del cliente esto no es posible AFAIK. Deberá verificar @ lado del servidor qué exactamente el usuario decidió publicar. – ChristopheD
Verifique también [Atributo "accept" de entrada de archivo - ¿es útil?] (Http://stackoverflow.com/questions/181214/) para soluciones provisionales. –