2009-04-06 8 views
2

J'ai un formulaire dans asp.net avec un contrôle FileUpload à l'intérieur. À côté de ce contrôle, j'ai le bouton "Télécharger" qui est utilisé pour télécharger un fichier dans une liste de fichiers. Le problème est que j'ai aussi "Submi" t bouton utilisé pour soumettre forme entière. Maintenant, quand quelqu'un sélectionne un fichier via le bouton de navigation et appuie sur "Soumettre" pas le fichier "Télécharger" est en cours de téléchargement et je ne voudrais pas cela.Comment ne pas télécharger le fichier sur soumettre

J'espère pour asp.net ou HTML générale réponse

Répondre

2

Sons comme le contrôle FileUpload Upload bouton doit être à l'intérieur de son propre formulaire. Avec ASP.NET et la restriction de formulaire 1 côté serveur, vous devrez peut-être recourir à des contrôles HTML réguliers pour ce faire. Vous pouvez également utiliser JavaScript pour effacer le fichier FileUpload si le téléchargement n'est pas cliqué. Les navigateurs peuvent être pointilleux sur l'accès aux entrées de fichiers, bien que (pour des raisons de sécurité) il peut ne pas être accessible.

2

Pour la réponse HTML générale, faites en sorte que votre bouton de téléchargement de fichier fasse partie d'un formulaire distinct de l'autre formulaire, ce qui signifie qu'il est encapsulé dans des étiquettes de formulaire distinctes.

Pour ASP.NET, vous allez avoir plus de mal, car ASP.NET par défaut a seulement un formulaire par page. En fin de compte, cependant, je pense que vous êtes mieux de repenser votre conception. Essayez de mettre ce téléchargement de fichier sur une page séparée; Si vous avez une page qui fait plus d'une chose, vous invitez la confusion de la part de l'utilisateur.

1

Le bouton Envoyer enverra toutes les informations du formulaire.

Essayez de placer le contrôle FileUpload à l'extérieur, sur un autre formulaire.

1

Votre contrôle FileUpload doit être sous son propre format si vous souhaitez être soumis séparément. Lorsque vous cliquez sur le bouton Télécharger, les autres parties de votre formulaire sont également envoyées. C'est juste comment ça fonctionne.

1

Je voudrais séparer les deux formes. Utiliser JavaScript ou quelque chose comme ça pourrait être pénible. Le problème avec la séparation des formulaires est que vous devez le faire d'une manière où vous ne perdez pas votre forme originale, ce qui signifie que si vous avez d'autres informations sur le formulaire, vous pourriez avoir un peu de cauchemar sur vos mains, mais si vous peut mettre le téléchargement de fichier soit au-dessus ou en dessous du formulaire qui soumettent les contrôles, alors c'est facile. J'utilise cette méthode sur l'un de mes sites et cela fonctionne plutôt bien.

Questions connexes