Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it L'avatar di a.felix
    Registrato dal
    Sep 2001
    Messaggi
    337

    Aggiungere onload al body da UC [asp.net 2]

    Ciao stò realizzando un uc dove ci sono dei js, ma dovrei mettere ad
    esempio <body onload="startclock(); timerONE=window.setTimeout">
    in maniera dinamica sulle pagine dove viene caricato l'uc

    conoscete un modo?
    tnxs

  2. #2
    codice:
    Page.Attributes.Add("event_name","function_name")
    
    Es : 
    
    Page.Attributes.Add("onLoad","startclock();")

  3. #3
    Utente di HTML.it L'avatar di a.felix
    Registrato dal
    Sep 2001
    Messaggi
    337
    Grazie Raffaele

  4. #4
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Ti faccio anch'io un esempio.

    A progetta la sua pagina aspx e mette pure il suo onload client per fare delle operazioni.

    B progetta il controllo utente il quale deve fare qualche cosa nell'evento client onload della pagina che ospita il controllo utente.

    B NON DEVE MODIFICARE L'EVENTO ONLOAD PREDISPOSTO DA A, MA SOLO AGGIUNGERLO.

    Detto questo, (è solo un esempio, bada bene), il controllo utente, con un pulsante server, vuole mandare un messaggio di alert al client, nell'evento onload della pagina.

    codice:
    <%@ Control Language="C#" ClassName="WebUserControl" %>
    
    <script runat="server">
    
        protected void Button1_Click(object sender, EventArgs e)
        {
            ModuloWeb.MsgBox(this.Page, "Ciao, Mondo!");
        }
    </script>
    
    <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" />
    il MsgBox è una funzione di libreria scritta in basic (utilizzabile pure da c# alla bisogna)
    codice:
        '----------------------------------------------------------------
        'scrive un messaggio nel client
        '----------------------------------------------------------------
        Public Sub MsgBox(ByVal This As System.Web.UI.Page, ByVal s$)
            s = s.Replace("\", "\\")
            s = s.Replace(vbNewLine, "\n")
            s = s.Replace("'", "\'")
    
            s = String.Format("var func = function(){{alert('{0}');}};var oldonload = window.onload;if (typeof window.onload != 'function') {{window.onload = func;}}else {{window.onload = function() {{oldonload();func();}}}}", s)
    
            Dim ScriptString$ = ""
            ScriptString += "<script type=""text/javascript"" >" & vbCrLf
            ScriptString += s & vbCrLf
            ScriptString += "</script>" & vbCrLf
            'This.RegisterStartupScript("clientscript", ScriptString)
            This.ClientScript.RegisterStartupScript(This.GetType, "messagebox", s, True)
    
    
    
        End Sub
    il javascript prodotto, per chiarezza formattato con commenti è:
    codice:
    <script type="text/javascript">
    <!--
    
    //questa è la funzione da accodare all'evento onload
    var func = function()
    {
    	alert('Ciao, Mondo!');
    };
    
    //salvo la eventuale onload preesistente
    var oldonload = window.onload;
    
    //se non esiste la funzione onload, la
    //imposto uguale a func
    if (typeof window.onload != 'function') 
    {
    	window.onload = func;
    }
    else
    //se esiste già onload, accodo la mia funzine func
    {
    	window.onload = function() 
    					{
    						oldonload();
    						func();
    					}
    }
    // -->
    </script>
    Non so se è questo che volevi comunque fai sapere
    Pietro

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.