AJAX problema di focus

martedì 23 ottobre 2007 - 13.20

dexx Profilo | Newbie

ciao,
da qualche giorno ho iniziato a utilizzare AJAX e devo dire che è molto utile e potente.
Ho un piccolo problema però.....
Questa è la mia applicazione (ci sono tutti gli spazi apposta per far vedere esempio):

http://img263.imageshack.us/img263/4562/36338003kq6.jpg

1) Faccio partire l'applicazione e scorro giu la pagina fino alla fine:

http://img514.imageshack.us/img514/7734/45683202kt6.jpg

2) Clicco sul pulsante, facendo partire un "<asp:AsyncPostBackTrigger ControlID="Button1" EventName="Click" />" per aggiornare il pannello

http://img514.imageshack.us/img514/7734/45683202kt6.jpg

3) Avendo inserito un delay di 5 secondi, risalgo la pagina, per vedere l'animazione della progrssUpdate di ajax

http://img504.imageshack.us/img504/7821/70680722fc3.jpg

4) al termine del delay però, il focus mi viene spostato sul bottone che ha causato l'aggiornamento del updatePanel facendomi scendere la pagina fino al bottone

http://img136.imageshack.us/img136/1173/94745945vz8.jpg


Come mai? Come posso fare in modo che questo non accada?

Cioè io ho una pagina molto lunga, e clicco su un pulsante in fondo (che causa un AsyncPostBackTrigger su un updatePanel ) e (nel frattempo che la richiesta asicrona viene eseguita) torno in alto nella pagina, voglio rimanere dove sono e non che il focus mi torni giu' al pulsante una volta che l'AsyncPostBackTrigger ha finito.


Qualcuno sa come evitare cio'?

pozzoli.samuele Profilo | Senior Member

Ajax aggiorna la pagina e quando hai lanciato la richiesta eri sul button. Lui al button mette il focus!

Prima cosa da evitare assulutamente, secondo me, è di fare le pagine lunghe! Hai l'acordion apposta!

Se proprio non ne puoi fare a meno, potresti ad esempio mettere il focus a un controllo ad inizio pagina.

Altrimenti io non ho idee, mi spiace. Spero ti risponda qualcun'altro.

Comunque dal mio punto di vista, posta così, non è risolvibile.
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5