Con la diffuzione di ASP.NET AJAX e il suo utilizzo sempre più spinto all'interno di applicazione web si può avere la necessità di eseguire del codice Javascript generato dinamicamente lato server, ma se questo viene fatto all'interno di un UpdatePanel di ASP.NEt AJAX si possono avere dei problemi in quanto il codice non viene eseguito dal browser.
Come si può notare tramite un proxy HTTP, il codice Javascript viene inviato correttamente al browser ma non viene eseguito e non si hanno errori Javascript ma, invocando il metodo statico RegisterClientScriptBlock della classe ScriptManager prensente in ASP.NET AJAX, è possibile restituire ed eseguire codice Javascript tramite un UpdatePanel.
System.Web.UI.ScriptManager.RegisterClientScriptBlock(Page,this.GetType(),Page.ClientID,"alert('ciao');",true);
Come mostrato dal codice il suo utilizzo è veramente semplice, l'unica nota lo fa l'ultimo parametro che indica se il metodo deve omettere o no il tag script di apertura e chiusura.
Per approfondimenti su ASP.NET AJAX si veda:
http://ajax.aspitalia.com/
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Utilizzo di Map e Object in Javascript
Gestire gli errori di caricamento delle immagini
Migrare un progetto ASP.NET Core da .NET 6 a .NET 7
3 metodi JavaScript che ogni applicazione web dovrebbe contenere
Utilizzare le Cache API di JavaScript per salvare elementi nella cache del browser
Organizzare il codice JavaScript utilizzando i moduli
Mostrare una preview durante l'upload di un'immagine in Blazor
Sfruttare la local cache del browser tramite gli ETag in ASP.NET Core
Utilizzare il tag HTML template
Gestire condizioni complesse in JavaScript
Filtrare e rimuovere gli elementi dalla cache del browser tramite le API JavaScript
Migliorare la scalabilità di ASP.NET Core 7 grazie all'output cache