2009-03-10 5 views
3

Vous avez une minuterie dans un panneau de mise à jour. Il se rafraîchit constamment (environ toutes les 2,5 secondes). Si elle rafraichit pendant le défilement, elle remet la position de défilement à ce qu'elle était avant la mise à jour partielle :(ASP.NET: Minuterie et position de défilement

J'utilise ASP.NET 3.5 et MaintainScrollPositionOnPostback est défini sur false (même si le comportement vrai ne change pas).

Aucune idée pourquoi cela se produit, mais la facilité d'utilisation est ennuyeux ...

Sincères salutations, Sascha

Répondre

4

Nous avons eu un problème similaire où une publication asynchrone réinitialisait l'utilisateur au-dessus d'un Nous avons résolu le problème après avoir trouvé le code suivant: http://forums.asp.net/t/1047815.aspx

Nous avons inséré le javascript suivant sur notre page après le ScriptManager sur la page. Cela a fait en sorte que la publication ne réinitialise pas la position de défilement des utilisateurs lorsque la publication est retournée.

Je ne sais pas si c'est exactement le problème que vous rencontrez. Vous pouvez également jeter un oeil à ce post: Reset scroll position after Async postback - ASP.NET qui décrit une méthode plus robuste de définir la position de défilement après une publication.

+0

Vous avez une erreur Sys.Webforms undefined. Mais sur le lien que vous avez posté, il y a un autre extrait, (écrivez votre propre fonction scrollTo vide). Cela a fait l'affaire. Doit rechercher pourquoi je reçois une erreur avec votre exemple ... – Sascha

+0

Peut être l'un des suivants: 1. Javascript apparaît avant le ScriptManager http://bit.ly/8askn 2. Web.Config pas configuré pour AJAX. http://bit.ly/ktZK2 3. EnablePartialRendering doit avoir la valeur true sur votre ScriptManager. http://bit.ly/14Gsj Le coupable est probablement le # 3. – sgriffinusa

+0

Le coupable était (1). Essayé et après que lu votre message. Merci. – Sascha

Questions connexes