2010-09-29 4 views
1

Celui-ci m'a fait perplexe. Je suis actuellement en train de rendre un formulaire en utilisant ASP MVC, il a un tas de champs, l'un d'eux est <input type="file"...Comment puis-je remplir la zone de texte d'une entrée de fichier HTML?

Le téléchargement de fichiers fonctionne très bien, mais quand je retourne le formulaire à l'utilisateur, la zone de texte qui contient le fichier est vide. Je voudrais montrer le chemin du fichier dans la zone de texte, mais il semble que le champ valeur ne remplit pas cette zone de texte.

Ie. <input type="file" value="abc.txt" /> ne met pas "abc.txt" dans la zone de texte.

Comment puis-je remplir la zone de texte d'une entrée de fichier HTML? Y a-t-il une autre propriété que je devrais utiliser autre que la propriété value?

Toute aide serait appréciée,

+0

Je recommande de rester loin de ''. Les navigateurs les ont rendus très difficiles à manipuler stylistiquement et fonctionnellement pour des raisons de sécurité. Il devient moche quand vous utilisez des hacks CSS et JavaScript pour contourner cela. – Omar

+0

Point prise Baddie, maintenant il est trop tard (et ça marche bien), mais je pourrais revoir le code pour un meilleur style et le comportement. –

Répondre

4

Ce champ de saisie est en lecture seule et vous ne pouvez pas définir explicitement la valeur de celui-ci.

+1

+1, et la raison pour laquelle il est en lecture seule est que si vous pouviez le définir, vous pouvez le définir sur n'importe quel fichier du système de fichiers. Si le navigateur autorisait par la suite ce fichier à télécharger, vous auriez un problème de sécurité grossier. –

+0

+1 pour répondre à la question (par opposition à ma mauvaise lecture de * toux *), avec des remerciements @Kirk –

+0

@Kirk - Vous avez raison exactement à la raison qu'il est en lecture seule. Maintenant, vous pouvez utiliser jQuery pour effacer le contenu de cette zone de texte, mais toute autre chose serait certainement un énorme problème de sécurité. – amurra

Questions connexes