2017-05-23 9 views
0

J'ai une page ASP.NET où dans web.config j'ai ajouté ce paramètre:MaintainScrollPositionOnPostback se heurtant avec la méthode de mise au point de textobox

<pages maintainScrollPositionOnPostBack="true"> 

maintenant dans une page ASPX, j'ai une zone de texte (txtTop) au-dessus de la forme & après que l'utilisateur défile vers le bas (il y a beaucoup de contrôles entre les deux) il y a un bouton.

A l'intérieur de ce bouton Cliquez sur l'événement sur le serveur, j'ai ajouté ce code.

txtTop.focus(); 

Je m'attends à ce que le focus soit sur la zone de texte ainsi que la position de défilement à pointer vers la zone de texte. mais ce n'est pas le cas. L'accent est là sur la zone de texte, mais il ne s'affiche pas, je dois appuyer sur une touche pour mettre la zone de texte dans la position de défilement.
Ces deux propriétés sont en conflit & Je suis incapable de le résoudre.

Pour votre information: Il n'y a pas de panneaux de mise à jour ..

Répondre

0

J'ai créé un sale hack pour résoudre this.Without setTimeout il ne fonctionnait ni était document.ready.

$(window).load(function() { 

    setTimeout(function() { 
     document.activeElement.scrollIntoView(true); 
    }, 1); 
});