次の方法で共有


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 のコンテキストを使用してパスを解決します。

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

こちらもご覧ください

適用対象