ClientScriptManager.RegisterClientScriptInclude メソッド

定義

クライアント スクリプト インクルードを Page オブジェクトに登録します。

オーバーロード

名前 説明
RegisterClientScriptInclude(String, String)

キーと URL を使用して、 Page オブジェクトにクライアント スクリプトを登録します。これにより、クライアントからスクリプトを呼び出できるようになります。

RegisterClientScriptInclude(Type, String, String)

型、キー、URL を使用して、 Page オブジェクトに含めるクライアント スクリプトを登録します。

RegisterClientScriptInclude(String, String)

キーと URL を使用して、 Page オブジェクトにクライアント スクリプトを登録します。これにより、クライアントからスクリプトを呼び出できるようになります。

public:
 void RegisterClientScriptInclude(System::String ^ key, System::String ^ url);
public void RegisterClientScriptInclude(string key, string url);
member this.RegisterClientScriptInclude : string * string -> unit
Public Sub RegisterClientScriptInclude (key As String, url As String)

パラメーター

key
String

登録するクライアント スクリプトのキーが含まれます。

url
String

登録するクライアント スクリプトの URL。

構文、使用法、例などの関連情報については、 RegisterClientScriptIncludeを参照してください。

注釈

クライアント スクリプト インクルードは、キーとその種類によって一意に識別されます。 同じキーと種類のスクリプトは重複と見なされます。 特定の型とキーのペアを持つスクリプトを 1 つだけページに登録できます。 既に登録されているスクリプトを登録しようとしても、スクリプトの複製は作成されません。

IsClientScriptIncludeRegistered メソッドを呼び出して、クライアント スクリプトに特定のキーと型のペアが既に登録されているかどうかを確認し、スクリプトの追加を不必要に試みないようにします。

Note

クライアント URL を解決するには、 ResolveClientUrl メソッドを使用します。 このメソッドは、呼び出される URL のコンテキストを使用してパスを解決します。

RegisterClientScriptInclude メソッドのこのオーバーロードは、keyURL、および type パラメーターを受け取るオーバーロードを呼び出します。

このメソッドは、レンダリングされたページの上部にスクリプト ブロックを追加します。

こちらもご覧ください

適用対象

RegisterClientScriptInclude(Type, String, String)

型、キー、URL を使用して、 Page オブジェクトに含めるクライアント スクリプトを登録します。

public:
 void RegisterClientScriptInclude(Type ^ type, System::String ^ key, System::String ^ url);
public void RegisterClientScriptInclude(Type type, string key, string url);
member this.RegisterClientScriptInclude : Type * string * string -> unit
Public Sub RegisterClientScriptInclude (type As Type, key As String, url As String)

パラメーター

type
Type

登録するクライアント スクリプトの種類。

key
String

登録するクライアント スクリプトのキーが含まれます。

url
String

登録するクライアント スクリプトの URL。

例外

クライアント スクリプトのインクルードの種類が null

URL は null です。

-または-

URL が空です。

次のコード例は、 RegisterClientScriptInclude メソッドの使用方法を示しています。 既存のクライアント スクリプトインクルードをチェックするロジックが削除された場合でも、 RegisterClientScriptInclude メソッドが重複をチェックするため、レンダリングされたページに重複するクライアント スクリプトは存在しないことに注意してください。 チェックの利点は、不要な計算を減らすことです。

<%@ 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)
    {
        // Define the name, type and url of the client script on the page.
        String csname = "ButtonClickScript";
        String csurl = "~/script_include.js";
        Type cstype = this.GetType();

        // Get a ClientScriptManager reference from the Page class.
        ClientScriptManager cs = Page.ClientScript;

        // Check to see if the include script exists already.
        if (!cs.IsClientScriptIncludeRegistered(cstype, csname))
        {
            cs.RegisterClientScriptInclude(cstype, csname, ResolveClientUrl(csurl));
        }

    }
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head>
    <title>ClientScriptManager Example</title>
  </head>
  <body>
     <form id="Form1" runat="server">
     <div>
        <input type="text"
               id="Message"/> 
        <input type="button" 
               value="ClickMe"
               onclick="DoClick()"/>
     </div>
     </form>
  </body>
</html>
<%@ Page Language="VB" %>

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

<script runat="server">
    
    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)

        ' Define the name, type and url of the client script on the page.
        Dim csname As String = "ButtonClickScript"
        Dim csurl As String = "~/script_include.js"
        Dim cstype As Type = Me.GetType()
    
        ' Get a ClientScriptManager reference from the Page class.
        Dim cs As ClientScriptManager = Page.ClientScript
    
        ' Check to see if the include script is already registered.
        If (Not cs.IsClientScriptIncludeRegistered(cstype, csname)) Then
      
            cs.RegisterClientScriptInclude(cstype, csname, ResolveClientUrl(csurl))
      
        End If
    
    End Sub

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>ClientScriptManager Example</title>
</head>
<body>
     <form id="Form1" runat="server">
     <div>
        <input type="text"
               id="Message"/> 
        <input type="button" 
               value="ClickMe"
               onclick="DoClick()"/>
     </div>
     </form>
</body>
</html>

この例では、次の内容を含む Script_include.js という名前の JavaScript ファイルが必要です。

function DoClick() {Form1.Message.value='Text from include script.'}

注釈

RegisterClientScriptInclude メソッドのこのオーバーロードは、スクリプトを識別するためのキーパラメーターと URL パラメーター、およびクライアント スクリプトインクルードの識別を指定するtypeパラメーターを受け取ります。 リソースにアクセスするオブジェクトに基づいて型を指定します。 たとえば、 Page インスタンスを使用してリソースにアクセスする場合は、 Page の種類を指定します。

Note

クライアント URL を解決するには、 ResolveClientUrl メソッドを使用します。 このメソッドは、呼び出される URL のコンテキストを使用してパスを解決します。

このメソッドは、レンダリングされたページの上部にスクリプト ブロックを追加します。

こちらもご覧ください

適用対象