Una delle possibilità offerte da ASP.NET 2.0 è il nuovo meccanismo denominato CrossPostBack che consente di fare il PostBack di una pagina all'interno di un'altra.
Questo scenario non è possibile con ASP.NET 1.x, ma risulta comunque facile inviare i dati, alla pressione di un pulsante, ad un'altra pagina.
Il tutto consiste nell'usare un po' di Javascript e nel recuperare i valori, nella pagina a cui vengono inviati i dati, sfruttando semplicemente la collection Form della classe HttpRequest.
E' così possibile inserire, ad esempio, una form che permetta di effettuare ricerche in un'altra pagina, mantenendo al tempo stesso la possiblità di utilizzare i Validator Control.
<form runat="server" id="theform"> <asp:datagrid runat="server" /> Testo: <asp:textbox id="search" runat="server" /> <asp:button id="y" Text="PostBack normale" runat="server" /> <input type="submit" id="x" Value="PostBack su page2.aspx" OnClick="submitForm('page2.aspx');" runat="server"/> </form> <script type="text/javascript"><!-- function submitForm(url) { // non possiamo usare il DOM sull'inpunt del ViewState, non ha l'attributo ID // 1) non serve passare il viewsate, nascondiamolo document.getElementById('theform').__VIEWSTATE.value=''; document.getElementById('theform').__VIEWSTATE.name='noviewstate'; // 2) cambiamo l'URL della form e facciamo il subimt document.getElementById('theform').action = url; document.getElementById('theform').submit(); } //--></script>
Per un uso frequente di questa tecnica, la scelta migliore è quella di creare un custom control che ne incapsuli direttamente la logica.
Per approfondimenti sui Custom Controls, si veda:
https://www.aspitalia.com/liste/usag/script_ricerca_Custom_Control.aspx
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
I più letti di oggi
- #lightswitch 2012 supporta nativamente #html5, #jquery e #jquerymobile. è stato mostrato girare su #ipad a #msteched
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- Velocity arriva alla CTP3
- Mono 2.8 aggiunge .NET Framework 4, ASP.NET 4.0 e MVC 2
- Prima CTP per Portable Library Tools
- VS 2005 CTP già su MSDN Universal
- Microsoft aggiorna WinFS beta 1 per VS 2005
- Information Card Kits for ASP.NET and HTML
- Web Camp - HTML5 per il web di oggi
- Una preview della prossima versione di #VisualStudio con cui creare #metrostyle app http://aspitalia.com/build-win8 #BldWin