Fermez le navigateur popup page après le téléchargement de fichier
Lorsque l'utilisateur clique sur un lien hypertexte, je suis de l'ouverture d'une fenêtre pop-up qui télécharge un fichier. Post de téléchargement, il montre de dialogue ouvrir et enregistrer de la boîte. Je veux fermer la fenêtre pop-up une fois que le téléchargement est terminé (lorsque l'utilisateur est invité pour enregistrer le fichier).
J'ai essayé de la fenêtre.proche de la méthode, mais il ne marche pas car le contexte n'est pas la fenêtre pop-up, mais l'ouvrir et enregistrer de la boîte de dialogue.
OriginalL'auteur Ankit | 2010-01-18
Vous devez vous connecter pour publier un commentaire.
Je pense que vous ne pouvez pas le contrôler par programmation. C'est un navigateur particulier, où certains navigateurs vous permettent de cocher une case pour fermer la fenêtre et ainsi de suite.
OriginalL'auteur Sarfraz
vous pouvez faire qu'une chose:
après le "fichier d'écriture de code dans votre servlet ou de struts action"
Étape 1: appel de la "réponse.flushBuffer();"
Étape 2: réponse à un appel.sendRedirect("close.htm")
où close.htm est :
Seul problème est de déterminer si le téléchargement est terminé. Je ne pense pas qu'il y est une façon possible de le faire. De toute façon, est-il un intérêt de garder l'ouverture pop-up jusqu'à ce que le téléchargement est terminé. Vous pouvez simplement fermer la fenêtre pop-up une fois que le téléchargement est lancé. À l'aide de JavaScript ci-dessous, ne pouvez-vous pas?
OriginalL'auteur Kumar Gaurav
Navigateurs ont l'habitude de décider pour eux-mêmes que d'essayer de télécharger un fichier ou l'ouvrir dans la fenêtre du navigateur, selon le navigateur utilisé, les plugins et les paramètres du serveur. Il semble que vous pourriez être à l'ouverture du lien dans une nouvelle fenêtre, comme si le navigateur allait ouvrir le fichier plutôt que de le télécharger, et ensuite le navigateur a opté pour le téléchargement. Ce qui laisse à l'utilisateur un fichier téléchargé, puis une fenêtre vide que vous n'avez aucun contrôle sur.
Pour le forcer à télécharger, vous devriez être en mesure de définir le Type de Contenu d'en-tête pour la cible du lien d'application/force-download. Comment vous faites cela dépendra de votre configuration, et si le fichier est téléchargé directement (dans ce cas, il sera un paramètre du serveur) ou via PHP ou .Net (dans ce cas, il est facile de définir par programmation l'en-tête). Assurez-vous également que le lien hypertexte n'est pas un
target="_blank"
attribut qui ouvre le lien dans une nouvelle fenêtre.Avec le bon Type de Contenu d'en-tête, et aucun target="_blank" (ou de la fenêtre.l'ouvrir, puis le pop-up ne devrait même pas ouvrir en premier lieu.
Je veux ouvrir la liste déroulante et afficher un message personnalisé dans une fenêtre. Mais une fois que le téléchargement est terminé, je veux que la fenêtre pour la fermer.
Je pense que vous allez être hors de la chance alors je ne crois pas qu'il soit possible de détecter lorsque le téléchargement est terminé. Notez que l'invite à enregistrer le fichier n'est pas le point que le téléchargement est terminé, mais le point que cela commence. Si vous voulez fermer la fenêtre tout de suite après que l'utilisateur clique sur le lien, puis il ya un certain nombre de façons, mais la mise onclick="setTimeout(function(){window.close();},1" (assurant la proximité qui se passe après le href est tiré, pas avant) serait probablement le faire.
Merci pour la réponse, mais le téléchargement peut prendre du temps dont je n'arrive pas à définir. J'ai essayé l'enregistrement du script pour fermer la fenêtre, mais il ne marche pas me faire virer le post de téléchargement cependant il se déclenche si je retire la logique de télécharger le fichier
OriginalL'auteur Karl B
C'est la fonctionnalité de Navigateur, Vous pouvez modifier les paramètres du navigateur pour que. Vous ne devriez pas aller pour la programmation . Par défaut, Si vous téléchargez le fichier dans firefox il demander de l'économie, mais en crome Il ne demande pas.
Vous avez besoin de modifier les paramètres de votre navigateur.
OriginalL'auteur Ravi