Condividi tramite


Procedura: aggiungere dinamicamente script client alle pagine Web ASP.NET

Aggiornamento: novembre 2007

È possibile aggiungere script client a una pagina utilizzando codice lato server. La generazione di script client nel codice lato server risulta utile quando i contesti dello script client si basano su informazioni non disponibili se non in fase di esecuzione. È anche utile aggiungere dinamicamente script client alla pagina quando si desidera che lo script client venga eseguito nelle situazioni riportate di seguito.

Per aggiungere dinamicamente script client a una pagina Web ASP.NET

  • Nel codice lato server, chiamare uno fra i metodi elencati nella tabella seguente.

    Metodo

    Descrizione

    RegisterClientScriptBlock

    Aggiunge un blocco di script nella parte superiore della pagina. Creare lo script sotto forma di stringa e passarla al metodo che la aggiunge alla pagina. È possibile utilizzare questo metodo per inserire qualsiasi script nella pagina. Si noti che è possibile eseguire il rendering dello script nella pagina prima del completamento di tutti gli elementi; pertanto, si può non essere in grado di fare riferimento a tutti gli elementi nella pagina dallo script.

    RegisterClientScriptInclude

    Simile al metodo RegisterClientScriptBlock, ma aggiunge un blocco di script che fa riferimento a un file esterno js. Il file di inclusione viene aggiunto prima di ogni altro script aggiunto dinamicamente; pertanto, potrebbe risultare impossibile fare riferimento ad alcuni elementi nella pagina.

    RegisterStartupScript

    Aggiunge un blocco di script nella pagina in esecuzione al termine del caricamento della pagina e prima che venga generato l'evento onload della pagina. In genere, lo script non viene creato come gestore eventi o funzione ma include solo le istruzioni che si desidera eseguire una sola volta.

    RegisterOnSubmitStatement

    Aggiunge lo script che viene eseguito in risposta all'evento onsubmit della pagina. Lo script viene eseguito prima dell'invio della pagina e permette di annullare l'invio.

    Nell'esempio riportato di seguito viene mostrato come aggiungere script client a una pagina in esecuzione quando l'utente fa clic su un pulsante che esegue un postback della pagina al server. Lo script client visualizza una finestra popup che richiede all'utente di confermare il postback.

    Protected Sub Page_Load(ByVal sender As Object, _
            ByVal e As System.EventArgs)
        Dim scriptText As String
        scriptText = "return confirm('Do you want to submit the page?')"
        ClientScript.RegisterOnSubmitStatement(Me.GetType(), _
            "ConfirmSubmit", scriptText)
    End Sub
    
protected void Page_Load(Object sender, EventArgs e)
{
    String scriptText = 
        "return confirm('Do you want to submit the page?')";
    ClientScript.RegisterOnSubmitStatement(this.GetType(), 
        "ConfirmSubmit", scriptText);
}

Vedere anche

Attività

Procedura: aggiungere eventi di script client ai controlli server Web ASP.NET

Concetti

Script client nelle pagine Web ASP.NET

Implementazione di callback client a livello di codice senza postback nelle pagine Web ASP.NET