afficher un gif alors que la page asp.net charge
J'ai un lenghty ASP.NET page du processus de chargement.
Est-il un moyen pour afficher un gif de chargement alors que le ASP.NET le chargement de la page?
Évidemment, je ne peux pas utiliser une image sur la page elle-même, et quand je fiirst charger un "dummy page" avec le "Chargement...", que la page est jeté dès que j'ai rediriger l'utilisateur vers la page réelle...
La moindre idée? Grâce
source d'informationauteur Didier Levy | 2011-08-29
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser un contrôle UpdateProgress pour cela, comme ceci:
Voici quelques styles que vous pouvez utiliser si vous voulez qu'il soit semi-transparent:
Veuillez voir mes semblables question "Veuillez Patienter" à l'aide de jQuery ou AJAX?:
Tandis que le ASPX chargement de la page, vous restez sur la page en cours dans le navigateur web. Alors, quand vous savez la nouvelle page est en cours de chargement (c'est à dire, quand un bouton ou un lien est pressé), il suffit de montrer le "Chargement" de l'image et il disparaîtra automatiquement lorsque le client est fini de la réception de la "nouvelle" à la page (que ce soit une réelle nouvelle page ou sur la même page affichée à l'arrière).
Exemple de code que vous pouvez utiliser pour afficher automatiquement votre chargement de l'image (contenu dans un
div
) lorsqu'un bouton est cliqué est la suivante:Alternativement, vous pouvez utiliser le
UpdatePanel
qui vient à l'Ajax Toolkit ou dans ASP.NET 4.0. Il a un contrôle appeléUpdateProgress
qui affiche un temps de chargement de l'image automatiquement.EDIT:
Je pense que vous voulez dire que vous voulez montrer à un "Chargement" de l'image avant de la première page est même chargé, dans ce cas, vous devriez mettre votre maître contenu de la page enroulé autour d'un
UpdatePanel
utiliser un progrès chargeur de contrôle qui affiche automatiquement une image (les deux sont disponibles dans l'Ajax Toolkit ou ASP.NET 4.0), et la charge de l'substantielle (non-master page) contenu de votre page après votre chargement initial de la page dans leUpdatePanel
.Vous pouvez le faire en mettant le corps de votre page de contenu à l'intérieur d'un
Panel
le réglage du panneau de visibilité àFalse
puis le paramètreTrue
après le chargement de la page.De balisage pour un
UpdateProgress
de contrôle est comme suit. Vous, bien sûr, vous voulez le style et la position dans la zone de droite.EDIT:
Si vous ne souhaitez pas utiliser le
UpdatePanel
etUpdateProgress
contrôles, puis il suffit de faire ce qui suit:Panel
appelépnlContent
et mettre le panneau de la visibilité àFalse
.img
et votre chargement de l'image et de la mettre dans un autrePanel
appelépnlLoading
avec le visility ensemble deTrue
.Mettre un script côté client que les forces de la page se recharge dès qu'il charge. Mettre ce script à l'intérieur de
pnlLoading
. Mise à jour: Mettre le #3 de code ci-dessous dans votre page ASPX pour créer votre panneau et il sera le déclencheur d'un poste de revenir immédiatement.Ajouter ce qui suit #4 code de votre
Page_Load
.Code:
Pour #3:
Pour le #4:
Qui cause du chargement de l'image pour montrer tout votre contenu de la page est en cours de chargement.
J'ai trouvé la solution suivante fonctionne très bien, entre la page navigations sans affecter l'Ajaxification ou de la structure du site.
Il suffit de déposer le script dans le no-mans-land entre la tête et le corps les balises de début de la page principale.
Grâce à Subin pour celui-ci.
http://subinsb.com/loading-bar-until-page-loads-completely-using-javascript
Il vous recommande de ne pas remplacer les noms de variable, car il y a peut être une autre variable comme ça et le code ne fonctionne pas.
Si vous souhaitez modifier le Chargement de l'Image il suffit de changer l'arrière-plan de l'URL dans la variable subinsblog.style.arrière-plan.