[C#] RegisterStartupScript e funzioni lato client

venerdì 08 maggio 2009 - 12.14

liveforever81 Profilo | Junior Member

Salve a tutti,

ho questa necessità:
devo controllare alcuni parametri che mi vengono passati in query string; sulla base di questi parametri devo poi manipolare questi dati in modo "client-side", generare un postback, e procedere.

Mi spiego meglio:
mi arrivano in QS dei parametri;
se tra questi parametri ce n'è uno ben definito, devo richiamare una funzione lato client;
al termine di questa funzione (che poi cancellerà questi parametri in modo da non ripetere l'esecuzione) dovrò ricaricare la pagina e procedere oltre.

Avevo iniziato a ragionare così:
nel metodo Page_Load controllo innanzitutto se esiste il parametro;
se esiste, richiamo una funzione javascript che fa alcune cose;
ricarico la pagina senza il parametro di prima.

Ho sentito parlare della funzione RegisterStartupScript: come implementarla? Devo creare un nuovo fle .js nella solution o posso scrivere il codice js direttamente dentro questo metodo?

Infine, come genero il postback evitando di andare oltre nel Page_Load?


Grazie mille a tutti!

4mane Profilo | Junior Member

Ti rimetto qui di seguito un link ad msdn che spiega in un esempio come utilizzare il RegisterStartupScript: http://msdn.microsoft.com/it-it/library/system.web.ui.page.registerstartupscript(VS.80).aspx

liveforever81 Profilo | Junior Member

Ciao!
Innanzitutto grazie per la risposta! :)

Avevo già visto il link su msdn.

Mi mancano però alcune nozioni (soprattutto di integrazione tra C# e javascript).
Nel code-behind della pagina, nel metodo Page_Load, avevo fatto una cosa del genere:

if (!String.IsNullOrEmpty(this.PARAMTERO1) // Se è presente il parametro in QS { String scriptString = "<script language=\"javascript\"> "; scriptString += "function funzioneTest(PARAMETRO){"; scriptString += " var mySIO = new ActiveXObject('#oggettoAutomazione#');"; scriptString += " var esito = mySIO.METODO(PARAMETRO);} "; scriptString += "</string>"; RegisterStartupScript("NavToScript", scriptString); }

Ti sembra corretto?
Come generare poi il nuovo caricamento della pagina dopo questo blocco di codice?
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2023
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5