ScriptManager.RegisterClientScriptInclude Metoda

Definicja

Rejestruje plik skryptu klienta z kontrolką do użycia z ScriptManager kontrolką, która znajduje się wewnątrz UpdatePanel kontrolki, a następnie dodaje odwołanie do pliku skryptu do strony.

Przeciążenia

RegisterClientScriptInclude(Control, Type, String, String)

Rejestruje plik skryptu klienta z kontrolką do użycia z ScriptManager kontrolką, która znajduje się wewnątrz UpdatePanel kontrolki, a następnie dodaje odwołanie do pliku skryptu do strony.

RegisterClientScriptInclude(Page, Type, String, String)

Rejestruje skrypt klienta z kontrolką ScriptManager za każdym razem, gdy następuje asynchroniczne wycofanie, a następnie dodaje odwołanie do pliku skryptu do strony.

RegisterClientScriptInclude(Control, Type, String, String)

Rejestruje plik skryptu klienta z kontrolką do użycia z ScriptManager kontrolką, która znajduje się wewnątrz UpdatePanel kontrolki, a następnie dodaje odwołanie do pliku skryptu do strony.

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)

Parametry

control
Control

Kontrolka rejestrującą plik skryptu klienta.

type
Type

Typ pliku skryptu klienta. Ten parametr jest zwykle określany przy użyciu operatora typeof (C#) lub operatora GetType (Visual Basic), aby pobrać typ kontrolki rejestrującej skrypt.

key
String

Unikatowy identyfikator pliku skryptu.

url
String

Adres URL pliku skryptu.

Wyjątki

Plik type skryptu klienta to null.

-lub- Kontrolka rejestrującą plik skryptu to null.

Kontrolka rejestrującą plik skryptu nie znajduje się w drzewie sterowania strony.

-lub- url to null.

-lub- url jest pusty.

Przykłady

<%@ 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;
}

Uwagi

Metoda służy RegisterClientScriptInclude do rejestrowania pliku skryptu klienta dla strony lub części strony, która uczestniczy w aktualizacjach częściowych stron. Pliki skryptów klienta zarejestrowane przy użyciu tej metody są wysyłane do strony tylko wtedy, gdy control reprezentuje kontrolkę, która znajduje się wewnątrz aktualizowanej UpdatePanel kontrolki. Aby zarejestrować plik skryptu za każdym razem, gdy następuje asynchroniczne wycofywanie, użyj RegisterClientScriptInclude(Page, Type, String, String) przeciążenia tej metody.

Jeśli chcesz zarejestrować blok skryptu, który nie dotyczy aktualizacji częściowych stron, a jeśli chcesz zarejestrować blok skryptu tylko raz podczas renderowania początkowego ClientScriptManager strony, użyj RegisterClientScriptBlock metody klasy . Odwołanie do ClientScriptManager obiektu można uzyskać z ClientScript właściwości strony.

Metoda RegisterClientScriptInclude rejestruje plik skryptu klienta na stronie, renderując script element, którego tag otwierający zawiera src atrybut. Parametr url służy do ustawiania atrybutu src . Aby rozwiązać problemy z adresami URL, użyj ResolveClientUrl metody . Ta metoda używa kontekstu adresu URL, który jest wywoływany, aby rozwiązać ścieżkę.

Zarówno metody, jak RegisterClientScriptInclude i RegisterClientScriptResource renderują pliki skryptów w przeglądarce. Jeśli skrypt o tym samym typie i kluczu (dla pliku skryptu) lub ten sam typ i nazwa zasobu (dla zasobu osadzonego) jest już renderowany, skrypt nie jest renderowany ponownie.

Zobacz też

Dotyczy

RegisterClientScriptInclude(Page, Type, String, String)

Rejestruje skrypt klienta z kontrolką ScriptManager za każdym razem, gdy następuje asynchroniczne wycofanie, a następnie dodaje odwołanie do pliku skryptu do strony.

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)

Parametry

page
Page

Obiekt strony, który rejestruje plik skryptu klienta.

type
Type

Typ pliku skryptu klienta. Ten parametr jest zwykle określany przy użyciu operatora typeof (C#) lub operatora GetType (Visual Basic), aby pobrać typ kontrolki rejestrującej skrypt.

key
String

Unikatowy identyfikator pliku skryptu.

url
String

Adres URL pliku skryptu.

Wyjątki

Plik type skryptu klienta to null.

-lub- Strona rejestrującą plik skryptu to null.

url to null.

-lub- url jest pusty.

Uwagi

Po zarejestrowaniu pliku skryptu przy użyciu tej metody skrypt jest renderowany za każdym razem, gdy wystąpi asynchroniczne ponoć. Aby zarejestrować plik skryptu dla kontrolki, która znajduje się wewnątrz UpdatePanel kontrolki, aby skrypt został zarejestrowany tylko po UpdatePanel zaktualizowaniu kontrolki, użyj RegisterClientScriptInclude(Control, Type, String, String) przeciążenia tej metody.

Jeśli chcesz zarejestrować blok skryptu, który nie dotyczy aktualizacji częściowych stron, a jeśli chcesz zarejestrować blok skryptu tylko raz podczas renderowania początkowego ClientScriptManager strony, użyj RegisterClientScriptBlock metody klasy . Odwołanie do ClientScriptManager obiektu można uzyskać z ClientScript właściwości strony.

Zobacz też

Dotyczy