Comment maintenir la position de défilement sur autopostback?
Comment puis-je revenir à la même position d'une page sur postback
. Il semble toujours arriver en haut de la page.
J'ai essayé d'utiliser maintainScrollPositionOnPostBack = "true"
Mais sa ne fonctionne pas.
Grâce,
Sam
source d'informationauteur BobLoblaw
Vous devez vous connecter pour publier un commentaire.
J'ai récemment regardé pour cela ainsi. Venu avec une charge de Javascript pour être inséré jusqu'à ce que j'ai trouvé le suivant:
En haut de votre .aspx codefile, insérer ce qui suit:
de sorte que la première phrase dans votre .aspx commence
Cela fonctionne bien pour moi, sans avoir à ajouter de tout autre code pour garder la barre de défilement positions à l'aide des updatepanels
Il y a un peu de moyens que j'ai utilisés pour définir maintainScrollPositionOnPostBack. Avez-vous essayé plus d'un? Pouvez-vous décrire ce qu'est le déclenchement de la publication et les navigateurs qui l'ont testé? Êtes-vous à l'aide d'une page maître?
Page.MaintainScrollPositionOnPostBack = true;
dans le code de chargement de page.<%@ Page MaintainScrollPositionOnPostback="true" %>
<pages maintainScrollPositionOnPostBack="true" />
Vous pouvez définir .Focus() sur un serveur spécifique de contrôle lorsque votre page enregistre.
Êtes-vous à l'aide de Google Chrome pour tester? J'ai eu le même problème mais a commencé à tester sous IE et Firefox, et c'était le travail. Je ne pense pas que Chrome prend en charge cette propriété. Il peut être un .NET Framework 3.5 question aussi. C'est probablement fixe .NET 4.0
Si vous avez une ancre que vous souhaitez déplacer vers vous pourriez faire quelque chose comme décrit ici. Sinon vous auriez à utiliser javascript et découvrez comment vous êtes loin de la haut, l'enregistrer dans un champ caché ou un cookie, et de rétablir la vue après le chargement de la page.
Bien que bbbwex la réponse est correcte, il m'a fallu un certain temps pour le réaliser j'ai besoin de place MaintainScrollPositionOnPostback="true" à la fois
Haut de la page ASPX.
Dans IsPostBack
Il fonctionne après que j'ai satisfaire à la fois la condition.
ajoutez le code ci-dessus dans
ScriptManager
taget d'ajouter
MaintainScrollPositionOnPostback="true"
dans la page de déclaration