web-dev-qa-db-fra.com

Comment restreindre <input type = "file"> afin qu'il ne puisse sélectionner que les fichiers .pdf?

Par défaut, il peut sélectionner tous les types de fichiers, comment le restreindre pour qu'il ne sélectionne que .pdf des dossiers?

30
fms

Vous pouvez utiliser l'attribut accept sur votre formulaire pour suggérer au navigateur de restreindre certains types. Cependant, vous voudrez revalider dans votre code côté serveur pour vous en assurer. Ne faites jamais confiance à ce que le client vous envoie.

27
David

plus explicitement ...

<input type="file" accept="application/pdf" /> 
75
Timmerz

Autrement dit: vous ne pouvez pas utiliser le html ordinaire et le javascript. Le plus proche que vous pouvez obtenir est de tester l'extension de fichier à l'aide de javascript avant de soumettre le formulaire et d'afficher un message d'erreur à l'utilisateur s'il est différent de .pdf. Vous devrez peut-être utiliser une solution côté client telle que des contrôles de téléchargement Flash si vous souhaitez y parvenir.

1
Darin Dimitrov