#950 - Il supporto al pulsante back del browser con ASP.NET AJAX 3.5 SP 1
ASP.NET 3.5 Service Pack 1 introduce una miglioria ad AJAX che consente di supportare il pulsante back del browser durante i PostBack asincroni, dando la possibilità di aggiungere un tocco di usabilità molto ma molto interessanti alle applicazioni che sfruttano questa modalità.
Per prima cosa occorre abilitarne il supporto sullo ScriptManager, agendo sulla proprietà EnableHistory e EnableSecureHistoryState in questo modo:
<asp:ScriptManager runat="server" id="SM" EnableHistory="true" EnableSecureHistoryState="true" onnavigate="SM_Navigate"/>
Successivamente è possibile aggiungere un punto nell'history, lato server, invocando il metodo AddHistoryPoint dello ScriptManager:
SM.AddHistoryPoint("Chiave", "Valore", "Titolo nell'history");E' possibile fare lo stesso da codice client side, con questa sintassi:
(Unknown language javascript
function clickButton(buttonNumber)
{
var historyPoint = { pageState : buttonNumber };
var title = "Aggiunto nell'History dal button " + buttonNumber;
Sys.Application.addHistoryPoint(historyPoint, title);
}
Viene in automatico generato un iframe con un URL casuale, che verrà sfruttato per gestire, in caso di navigazione con i pulsanti del browser, il cambio di stato.
Per poter riportare la pagina allo stato originale, è necessario intercettare l'evento OnNavigate dello ScriptManager, in questo modo:
void SM_Navigate(object sender, HistoryEventArgs e){
string MyValue = Convert.ToInt32(e.State["Chiave"]);
}
In questo modo verrà prelevato il valore specificato dalla chiave e si potrà, ad esempio, rieffettuare l'operazione necessaria a ripristrinare lo stato.
Approfondimenti
- Disponibile parte del codice sorgente del Framework
- #956 - Aggiungere controlli ad una pagina ASP.NET con supporto per gli eventi usando XSLT
- Membership API per SQL Server anche senza dbo
- #955 - Realizzare un metodo FindControl generico utilizzando gli Extension Method
- Speciale per il lancio di Visual Studio 2008, SQL Server 2008 e Windows Server 2008 dal 25/02 al 07/03
- #954 - Impostare a runtime la query di selezione con SqlDataSource
- Cosa c'è in ASP.NET 3.5 Service Pack1
- Speciale .NET Framework 3.5 SP1
- Realizzare applicazioni ASP.NET sicure - Prima parte
- #922 - Utilizzare il metodo Page.SetFocus per impostare il focus all'interno della form
Commenti
Esprimi il tuo giudizio su questo script:
Per procedere devi essere autenticato.
Aggiungi un nuovo commento »»»
Per inserire un commento, devi registrarti alla nostra community.






Stampa
Download 


10annidi.ASPItalia.com: iscriviti alla competizione e vinci fantastici premi ogni mese!
Ottima cosa, è esattamente quello che cercavo, ma non riesco a farlo funzionare:nella cronologia mi mette il nuovo url, ma quando clicco back, non ci ...
Continua »»» | Rispondi »»»