ASP.NET AJAX
Molto spesso capita di dover integrare, anche solo per semplici miglioramenti grafici, dei plugin jQuery all’interno delle nostre pagine ASP.NET. Gran parte delle volte l’impatto è indolore mentre in alcuni casi specifici occorre far riferimento ad accorgimenti non banali, soprattutto quando c’è di mezzo ASP.NET Ajax. Il classico esempio si verifica quando ci si aspetta che la funzione $(document).ready() venga chiamata correttamente anche dopo un asynchronous postback tramite UpdatePanel. Infatti, la funzione $(document).ready() permette di determinare il momento in cui il DOM della pagina è caricato dal browser. Tuttavia, in caso di asynchronous postback il DOM può essere...
In applicazioni Web di una certa complessità, spesso le classiche tecniche di caricamento dinamico di UserControl tramite PostBack o UpdatePanel rischiano di rendere lo sviluppo delle pagine molto complesso nonché, cosa più pericolosa, non performante. Di certo uno scenario maggiormente flessibile dovrebbe anzitutto ridurre al minimo il traffico da/verso il server (vedi "UpdatePanel e i suoi abusi") ma soprattutto permettere di richiedere il caricamento di contenuti on-demand sfruttando la potenza di AJAX. In questo esempio voglio mostrare quanto sia semplice implementare un' infrastruttura di base che permetta il caricamento dinamico di UserControl tramite jQuery AJAX (client-side)...
Un controllo AJAX molto "cool": UpdatePanelPopupExtender.
Si tratta di un ASP.NET AJAX extender che può essere agganciato ad un UpdatePanel in modo tale che quest'ultimo appaia dietro ad un qualsiasi controllo che specifichiamo come PopUp.
In questo post vengono evidenziati alcuni interessanti scenari che si possono implementare con questo controllo:
Master Details
Master Multiple Details
AJAX search
Un grazie a Manuel per la segnalazione.
Technorati Tag: ASP.NET AJAX
In questo post viene mostrato un utilizzo del jQuery BlockUI plugin per visualizzare un Modal Progress personalizzato durante il partial postback di un UpdatePanel. Il risultato che si può ottenere con questo approccio è ad esempio il seguente:
Molto interessante :)
Technorati Tag: AJAX,jQuery
Un po' di tempo fa mi sono imbattutto in un post dell' IEBlog in cui viene mostrato come l'aggiunta "prematura" di elementi al DOM tramite javascript ( ovvero prima che il parser rilevi la corretta chiusura del tag padre dell'elemento aggiunto dinamicamente ) può indurre IE7 alla visualizzazione di un messageBox "Operation aborted" che preclude addirittura la visualizzazione della pagina. Viceversa, se il DOM viene acceduto "troppo tardi" - ad esempio per nascondere degli elementi della pagina come immagini o oggetti embedded - si possono ottenere degli effetti indesiderati di lampeggiamento ("flickers"). Dunque, sorge spesso il dubbio circa quando e...
Vorrei segnalare uno strano comportamento della nuova versione del ModalPopupExtender che ho avuto modo di notare proprio oggi nell' ultima release di AjaxControlToolkit.Supponiamo di avere il seguente scenario, in cui ci sono due ModalPopupExtender aventi TargetControlID diversi ma lo stesso PopupControlID: ...
<asp:Panel ID="MyTestPanel" runat="server">
My content...<br /><br />
<asp:Button ID="OKButt" runat="server" Text=" OK " />
...
Oggi mi è stato chiesto a bruciapelo (cito testualmente) "...un modo per eseguire il refresh di un UpdatePanel tramite un evento javascript (ad esempio onblur di un input text)...".Se ci pensiamo bene, questo tipo di scelta implementativa va "filosoficamente" contro i principi di AJAX. Infatti (assumendo che il browser supporti Javascript :)), è maggiormente corretto utilizzare il più possibile le API AJAX del framework client-side per gestire il comportamento dei controlli client-side, al fine di evitare round-trip dispendiosi e spesso inutili verso il server (uno degli obiettivi primari di AJAX, d'altronde, è proprio questo :)).Si pensi al caso di un' invocazione...
Spesso nelle nostre applicazioni ASP.NET ci troviamo di fronte all'esigenza di aggiungere controlli in fase di run-time in modo da rendere completamente dinamico il comportamento delle nostre pagine. Ultimamente mi sono scontrato con la necessità di utilizzare questa tecnica all'interno del controllo UpdatePanel di ASP.NET AJAX. Anzitutto, è importante precisare come non sia possibile aggiungere controlli direttamente nell'UpdatePanel (non possiamo quindi fare una cosa di questo tipo: MyUpdatePanel.Controls.Add(...)). Siamo quindi vincolati a prevedere dei container (es. Panel) da collocare nel ContentTemplateContainer dell' UpdatePanel per procedere all'aggiunta dei nostri controlli. Uno dei modi più veloci e funzionali per poter poi riuscire a determinare quale controllo run-time all'interno dell' UpdatePanel ha generato...