Condividi tramite


ScriptManager.RegisterClientScriptInclude Metodo

Definizione

Registra un file di script client con il controllo ScriptManager da usare con un controllo compreso in un controllo UpdatePanel e quindi aggiunge un riferimento al file di script alla pagina.

Overload

RegisterClientScriptInclude(Control, Type, String, String)

Registra un file di script client con il controllo ScriptManager da usare con un controllo compreso in un controllo UpdatePanel e quindi aggiunge un riferimento al file di script alla pagina.

RegisterClientScriptInclude(Page, Type, String, String)

Registra lo script client con il controllo ScriptManager ogni volta che si verifica un postback asincrono e quindi aggiunge un riferimento al file di script alla pagina.

RegisterClientScriptInclude(Control, Type, String, String)

Registra un file di script client con il controllo ScriptManager da usare con un controllo compreso in un controllo UpdatePanel e quindi aggiunge un riferimento al file di script alla pagina.

public:
 static void RegisterClientScriptInclude(System::Web::UI::Control ^ control, Type ^ type, System::String ^ key, System::String ^ url);
public static void RegisterClientScriptInclude (System.Web.UI.Control control, Type type, string key, string url);
static member RegisterClientScriptInclude : System.Web.UI.Control * Type * string * string -> unit
Public Shared Sub RegisterClientScriptInclude (control As Control, type As Type, key As String, url As String)

Parametri

control
Control

Controllo che registra il file di script client.

type
Type

Tipo del file di script client. Questo parametro viene in genere specificato usando l'operatore typeof (C#) o l'operatore GetType (Visual Basic) per recuperare il tipo del controllo che sta registrando lo script.

key
String

Identificatore univoco per il file di script.

url
String

URL del file di script.

Eccezioni

Il file di script client type è null.

-oppure-

Il controllo che registra il file di script è null.

Il controllo che registra il file di script non è presente nella struttura ad albero dei controlli della pagina.

-oppure-

url è null.

-oppure-

url è vuoto.

Esempio

<%@ Page Language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">
    public void Page_Load(Object sender, EventArgs e)
    {
        if (!IsPostBack)
            Calendar1.SelectedDate = DateTime.Today;
        
    }
    protected void Page_PreRender(object sender, EventArgs e)
    {
        ScriptManager.RegisterClientScriptInclude(
            this,
            typeof(Page),
            "AlertScript",
            ResolveClientUrl("~/scripts/script_alertdiv.js"));
    }
    protected void IncrementButton_Click(object sender, EventArgs e)
    {
        Calendar1.SelectedDate = Calendar1.SelectedDate.AddDays(1.0);
    }
    protected void DecrementButton_Click(object sender, EventArgs e)
    {
        Calendar1.SelectedDate = Calendar1.SelectedDate.AddDays(-1.0);
    }

</script>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>ScriptManager RegisterClientScriptInclude</title>
    <style type="text/css">
    div.MessageStyle
    {
      background-color: Green;
      top: 95%;
      left: 1%;
      position: absolute;
      visibility: hidden;
    }
    </style>
</head>
<body>
    <form id="Form1" runat="server">
        <div>
            <asp:ScriptManager ID="ScriptManager1"
                               runat="server"/>

            <script type="text/javascript">
            Sys.WebForms.PageRequestManager.instance.add_endRequest(Notify);
            </script>

            <asp:UpdatePanel ID="UpdatePanel1" UpdateMode="Conditional"
                runat="server">
                <ContentTemplate>
                    <asp:Calendar ID="Calendar1" runat="server"/>
                    <br />
                    Change the selected date: 
                    <asp:Button runat="server" ID="DecrementButton" Text="-" OnClick="DecrementButton_Click" />
                    <asp:Button runat="server" ID="IncrementButton" Text="+" OnClick="IncrementButton_Click" />
                </ContentTemplate>
            </asp:UpdatePanel>

            <div id="NotifyDiv" class="MessageStyle">
                Updates are complete.
            </div>
        </div>
    </form>
</body>
</html>
function Notify(sender, arg)
{
    ActivateAlertDiv('visible', 'NotifyDiv');
    setTimeout("ActivateAlertDiv('hidden', 'NotifyDiv')", 1000);
}
function ActivateAlertDiv(visstring, elem)
{
    var adiv = document.getElementById(elem);
    adiv.style.visibility = visstring;
}

Commenti

Usare il RegisterClientScriptInclude metodo per registrare un file di script client per una pagina o una parte di una pagina che partecipa agli aggiornamenti a pagina parziale. I file di script client registrati tramite questo metodo vengono inviati alla pagina solo quando rappresenta control un controllo che si trova all'interno di un UpdatePanel controllo che viene aggiornato. Per registrare un file di script ogni volta che si verifica un postback asincrono, usare l'overload RegisterClientScriptInclude(Page, Type, String, String) di questo metodo.

Se si vuole registrare un blocco di script che non riguarda gli aggiornamenti parziali della pagina e si vuole registrare il blocco di script solo una volta durante il rendering della pagina iniziale, usare il metodo RegisterClientScriptBlock della classe ClientScriptManager. È possibile ottenere un riferimento all'oggetto ClientScriptManager dalla proprietà ClientScript della pagina.

Il RegisterClientScriptInclude metodo registra un file script client nella pagina eseguendo il rendering di un script elemento il cui tag di apertura contiene un src attributo . Il url parametro viene usato per impostare l'attributo src . Per risolvere gli URL, usare il ResolveClientUrl metodo . Questo metodo usa il contesto dell'URL chiamato per risolvere il percorso.

I metodi e RegisterClientScriptResource eseguono il rendering dei RegisterClientScriptInclude file di script nel browser. Se viene già eseguito il rendering di uno script con lo stesso tipo e la stessa chiave (per un file di script) o lo stesso tipo e lo stesso nome di risorsa (per una risorsa incorporata), il rendering dello script non viene eseguito di nuovo.

Vedi anche

Si applica a

RegisterClientScriptInclude(Page, Type, String, String)

Registra lo script client con il controllo ScriptManager ogni volta che si verifica un postback asincrono e quindi aggiunge un riferimento al file di script alla pagina.

public:
 static void RegisterClientScriptInclude(System::Web::UI::Page ^ page, Type ^ type, System::String ^ key, System::String ^ url);
public static void RegisterClientScriptInclude (System.Web.UI.Page page, Type type, string key, string url);
static member RegisterClientScriptInclude : System.Web.UI.Page * Type * string * string -> unit
Public Shared Sub RegisterClientScriptInclude (page As Page, type As Type, key As String, url As String)

Parametri

page
Page

Oggetto pagina che registra il file di script client.

type
Type

Tipo del file di script client. Questo parametro viene in genere specificato usando l'operatore typeof (C#) o l'operatore GetType (Visual Basic) per recuperare il tipo del controllo che sta registrando lo script.

key
String

Identificatore univoco per il file di script.

url
String

URL del file di script.

Eccezioni

Il file di script client type è null.

-oppure-

La pagina che registra il file di script è null.

url è null.

-oppure-

url è vuoto.

Commenti

Quando si registra un file di script con questo metodo, il rendering dello script viene eseguito ogni volta che si verifica un postback asincrono. Per registrare un file di script per un controllo che si trova all'interno di un controllo UpdatePanel in modo che lo script venga registrato solo quando il controllo UpdatePanel viene aggiornato, usare l'overload RegisterClientScriptInclude(Control, Type, String, String) di questo metodo.

Se si vuole registrare un blocco di script che non riguarda gli aggiornamenti parziali della pagina e si vuole registrare il blocco di script solo una volta durante il rendering della pagina iniziale, usare il metodo RegisterClientScriptBlock della classe ClientScriptManager. È possibile ottenere un riferimento all'oggetto ClientScriptManager dalla proprietà ClientScript della pagina.

Vedi anche

Si applica a