Simulare un ONCLICK="javascript:window.history.back();

lunedì 03 novembre 2008 - 17.26

ravalon Profilo | Expert

Salve a tutti....

in ASP potevo aggiungere un bottone con questa istruzione lato client;

ONCLICK="javascript:window.history.back();

in modo da far tornare indietro la navigazione senza perdere i dati inseriti in una form...

Come si fa in ASP.NET?

alx_81 Profilo | Guru

>Salve a tutti....
Ciao!

>in ASP potevo aggiungere un bottone con questa istruzione lato
>client;

>ONCLICK="javascript:window.history.back();

>in modo da far tornare indietro la navigazione senza perdere
>i dati inseriti in una form...

>Come si fa in ASP.NET?
OnClientClick
http://msdn.microsoft.com/it-it/library/system.web.ui.webcontrols.button.onclientclick(VS.80).aspx


--

Alessandro Alpi | SQL Server MVP

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org

rossimarko Profilo | Guru

Ciao,

per inserire del codice javascript in un pulsante asp.net puoi usare la proprietà OnClientClick (http://msdn.microsoft.com/it-it/library/system.web.ui.webcontrols.button.onclientclick.aspx)

Edit: scusa alle, non evevo visto
-----------------------------------------
Rossi Marco
http://blogs.dotnethell.it/rossimarko

ravalon Profilo | Expert

ehm...scusate ma in effetti mi sono sbagliato.....

il mio non è un controllo ASPNET ma un INPUT ID di tipo HTML CONTROLS

<input id= ...ecc.ecc.

Qui ho solo la proprietà onclick ma non funziona

Ho usato questo codice

<input id="cmdTornaAllaPaginaRegistrazione" runat ="server" type="button" name="cmdTornaAllaPaginaRegistrazione" class="ButtonBase" onclick="javascript:window.history.back();" value="<%$Resources:ResourceGenerali,txtTornaAllaPaginaRegistrazione%>" />

alx_81 Profilo | Guru

>ehm...scusate ma in effetti mi sono sbagliato.....
>
>il mio non è un controllo ASPNET ma un INPUT ID di tipo HTML
>CONTROLS
>
><input id= ...ecc.ecc.
>
>Qui ho solo la proprietà onclick ma non funziona
se non ti serve nel code behind, rimuovi runat="server" e prova con history.back(-1);

ciao!

--

Alessandro Alpi | SQL Server MVP

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org

ravalon Profilo | Expert

Niente da fare....ho provato

javascript:history.go(-1);
javascript:history.back();

ma niente da fare....

Ho provato anche a caricare nel LOAD e nel PRE_RENDER questo codice

cmdTornaAllaPaginaRegistrazione.Attributes.Add("onclick", "history.back();")

ma non funziona....

alx_81 Profilo | Guru

>Niente da fare....ho provato
>ma niente da fare....
>ma non funziona....
Prova a controllare l'html della pagina.
Perchè onclick deve funzionare..

--

Alessandro Alpi | SQL Server MVP

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org

ravalon Profilo | Expert

Intendi usando il metodo con ATTRIBUTES.ADD oppure mettendo ONCLICK="... nel codice ASPX ?

alx_81 Profilo | Guru

no, intendo tasto destro del mouse --> View Source (o HTML).
Posta l'html del pulsantino..
--

Alessandro Alpi | SQL Server MVP

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org

ravalon Profilo | Expert

si ma cosa faccio girare, il codice con ATTRIBUTES.ADD o quello col semplice ONCLICK ="... ?

alx_81 Profilo | Guru

>si ma cosa faccio girare, il codice con ATTRIBUTES.ADD o quello
>col semplice ONCLICK ="... ?
Quello che hai usato per ultimo va bene.. voglio vedere come ottieni l'html..

--

Alessandro Alpi | SQL Server MVP

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org

ravalon Profilo | Expert

Ti metto tutto l'html

La pagina usa AJAX, mi ero dimenticato di segnalarlo, non so se può essere un problema...

Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra

alx_81 Profilo | Guru

non c'è il pulsantino..
--

Alessandro Alpi | SQL Server MVP

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org

ravalon Profilo | Expert

aspetta....quando la pagina elabora i dati ho utilizzato dei panel che nascondo o rendo visibili a seconda che ci sia stato un errore...in quel caso li rendo visibili e nascondo tutto il resto che serve solo per l'immissione dei dati....

Ma ti assicuro che dopo elaborati mi compare il pulsante perchè sta dentro uno di questi ASP:PANEL

Ti posto il PANEL in questione

//////////////////////////////////
<asp:Panel ID="PanelConfermaRegistrazione" runat="server" Visible="false">
<table width="100%" class="TableGrigia">
<tr>
<td width ="100%">
<br />
<asp:Image ID="ImgEsitoRegistrazione" runat="server" ImageUrl="" />
<!--<img src="<%=imgpath & "RegistrazioneOK.gif"%>" align="middle" />-->
<center>
<asp:Label ID="lblRegistrazioneConfermata" CssClass="TestiRossiBIG" runat="server" Text="" Width="98%"></asp:Label>
<br /><br />

<input id="cmdTornaAllaPaginaRegistrazione" type="button" name="cmdTornaAllaPaginaRegistrazione" runat ="server" class="ButtonBase" value="<%=Resources.ResourceGenerali.txtTornaAllaPaginaRegistrazione%>" />
<input id="cmdTornaAllaHome" type="button" name="cmdTornaAllaHome" class="ButtonBase" value="<%=Resources.ResourceGenerali.txtTornaallahomepage %>" onclick="javascript:location.href('../default.aspx');" />
</center>
<br />
</td>
</tr>
</table>
</asp:Panel>
/////////////////////////////////////////////

alx_81 Profilo | Guru

>aspetta....quando la pagina elabora i dati ho utilizzato dei
>panel che nascondo o rendo visibili a seconda che ci sia stato
>un errore...in quel caso li rendo visibili e nascondo tutto il
>resto che serve solo per l'immissione dei dati....
E con il location.href funziona?
--

Alessandro Alpi | SQL Server MVP

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org

ravalon Profilo | Expert

Funziona se passo il path della pagina, ma con il BACK non funziona...forse è meglio che metta degli ASP:BUTTON e taglio la testa al toro...che dici ??

alx_81 Profilo | Guru

>Funziona se passo il path della pagina, ma con il BACK non funziona...forse
>è meglio che metta degli ASP:BUTTON e taglio la testa al toro...che
>dici ??
Come ti dicevo all'inizio, ASP:Button e OnClientClick sono con te
--

Alessandro Alpi | SQL Server MVP

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org

ravalon Profilo | Expert

ok farò cosi...grazie !!!
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