J'ai une simple application C# ASP.NET qui génère un fichier Excel et l'envoie au navigateur en utilisant la fonction Response.WriteFile().Comment puis-je modifier une page après le téléchargement d'un fichier dans le navigateur?
Je voudrais désactiver le bouton d'envoi une fois qu'il a été cliqué et affiche un message sur l'écran d'attendre quelques minutes, car certains des fichiers peut prendre un certain temps pour générer. Cela fonctionne très bien, mais je n'arrive pas à comprendre comment réactiver le bouton, ou même actualiser la page, une fois le téléchargement du fichier terminé. La page reste dans un état désactivé, "Please wait ..." même quand c'est fini.
Je pensais un appel AJAX synchrone avec les commandes supplémentaires javascript serait ensuite travailler, mais bien que le fichier ne soit généré, il n'a jamais envoyé au navigateur. J'ai également essayé d'utiliser un contrôle iframe, mais je ne trouve aucun moyen de savoir de façon fiable quand un nouveau fichier est chargé à l'intérieur.
Merci d'avance à tous ceux qui peuvent vous aider! MISE À JOUR: J'ai trouvé une solution possible au http://code.msdn.microsoft.com/AjaxFileDownload qui fonctionne très bien pour le téléchargement de fichiers qui existent déjà, mais quand j'appelle une page qui génère le fichier et finit avec Response.End(), l'événement "Finished Downloading" ne se déclenche jamais .
vous ne pouvez pas savoir via javascript lorsque le fichier est "le téléchargement terminé". C'est en haut faire le navigateur. En ce qui concerne le «fait de générer» le serveur, la solution de Stephen est assez juste. –
Essayez quelque chose comme [this] (http://stackoverflow.com/a/4168965/585552) – Greg