Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
ASP.NET 2.0 / 3.5 / 4.0
Problemi con "javascript alert" nella page_load per verifica dati inpu...
mercoledì 11 novembre 2009 - 00.01
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
cosmopsis
Profilo
| Junior Member
74
messaggi | Data Invio:
mer 11 nov 2009 - 00:01
Voglio mostrare un msgbox stile vb per intenderci. Trovo questa funzione:
Private Sub showClientMessageBox(ByVal message As String)
If Not (ClientScript.IsStartupScriptRegistered("doMessage")) Then
Dim buffScriptString As String
buffScriptString = "<script language=""javascript"">" & vbCrLf _
& "<!-- " & vbCrLf _
& "alert(""" & message & """); " & vbCrLf _
& "--> " & vbCrLf _
& "</script>"
ClientScript.RegisterStartupScript(Me.GetType(), "doMessage", buffScriptString)
End If
End Sub
Tutto funziona correttamente.
Nel Sub Page_Load della webForm la verifico. Il fatto è che al primo caricamento della webform il messaggio appare: se ricarico la pagina (mettiamo per un button premuto) non appare nessun messaggio! Ho verificato in debug: si passa di lì. Per semplicità ho messo un richiamo brutale nella load senza controllo isPostback per intenderci. Nulla. Sto impazzendo -- soprattutto perché ho la sensazione che sia un emerita cavolata il mio errore. Il messaggio serve ad indicare eventuali errori di input. Qualcuno può indicarmi dove sbaglio?
FrancescoGuadagno
Profilo
| Senior Member
224
messaggi | Data Invio:
mer 11 nov 2009 - 09:11
>Voglio mostrare un msgbox stile vb per intenderci. Trovo questa
>funzione:
>
>Private Sub showClientMessageBox(ByVal message As String)
>If Not (ClientScript.IsStartupScriptRegistered("doMessage"))
>Then
> Dim buffScriptString As String
>buffScriptString = "<script language=""javascript"">" &
>vbCrLf _
> & "<!-- " & vbCrLf _
>& "alert(""" & message & """); " & vbCrLf _
> & "--> " & vbCrLf _
> & "</script>"
>
>ClientScript.RegisterStartupScript(Me.GetType(), "doMessage",
>buffScriptString)
> End If
>End Sub
>
>Tutto funziona correttamente.
>Nel Sub Page_Load della webForm la verifico. Il fatto è che al
>primo caricamento della webform il messaggio appare: se ricarico
>la pagina (mettiamo per un button premuto) non appare nessun
>messaggio! Ho verificato in debug: si passa di lì. Per semplicità
>ho messo un richiamo brutale nella load senza controllo isPostback
>per intenderci. Nulla. Sto impazzendo -- soprattutto perché ho
>la sensazione che sia un emerita cavolata il mio errore. Il messaggio
>serve ad indicare eventuali errori di input. Qualcuno può indicarmi
>dove sbaglio?
>
Tramite quella funzione tu stai inserendo il tuo script js sull'html della pagina (mediante il metodo ClientScript.IsStartupScriptRegistered()) ma dopo il primo post questo codice html (js) viene perso. Devi reinserirlo ad ogni postback se vuoi che venga mantenuto.
Se vuoi, puoi fare una prova molto semplice, ovvero guardare il codice html di ogni post in IE. La prima volta ritroverai il js. al click di un button o in generale dopo qualsiasi postback il js scompare.
cosmopsis
Profilo
| Junior Member
74
messaggi | Data Invio:
mer 11 nov 2009 - 11:27
Grazie per la risposta.
No. Putroppo il js è lì sia alla prima che alle successive volte. Ho specificato di averlo messo brutalmente nel load...
Mi chiedo quale possa essere il mio errore...
Torna su
Stanze Forum
Elenco Threads
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 !