venerdì 15 febbraio 2008

Emettere un alert a seguito di un postback

Programmando applicazioni web ci si trova spesso nella condizione di voler comunicare qualcosa all'utilizzatore in maniera evidente, attirando l'attenzione su una condizione particolare, o su un errore.

In windows form utilizzeremmo il classico messagebox, comodo, pieno di opzioni e molto pratico.

Nelle pagine ASP.NET invece dobbiamo emettere il codice javascript per far visualizzare un alert js contenente il messaggio del caso.

Ho scritto quindi una comodissima funzione nelle pagine web che assomiglia molto alla seguente:

public void MessageBoxScriptInject(string messageToShow)
{
// lo rendo comatibile con javascript...
string messageTranslated =
messageToShow.Replace("'", "\\'");
messareTranslated =
messareTranslated.Replace("\n", " ");
messareTranslated =
messareTranslated.Replace("\r", " ");

// creo il javascript
System.Text.StringBuilder js =
new System.Text.StringBuilder();
js.AppendLine("
window.alert('" +
messareTranslated + "');");

// inietto il codice nella pagina (sintassi .NET 2.0)
this.ClientScript.RegisterStartupScript(
typeof(string),
Guid.NewGuid().ToString(),
js.ToString(),
true);
}

Nessun commento: