ClientScriptManager.RegisterClientScriptInclude 메서드

정의

클라이언트 스크립트 포함을 개체에 등록합니다 Page .

오버로드

Name Description
RegisterClientScriptInclude(String, String)

클라이언트에서 스크립트를 Page 호출할 수 있도록 하는 키 및 URL을 사용하여 개체에 클라이언트 스크립트를 등록합니다.

RegisterClientScriptInclude(Type, String, String)

형식, 키 및 URL을 사용하여 개체에 Page 클라이언트 스크립트 포함을 등록합니다.

RegisterClientScriptInclude(String, String)

클라이언트에서 스크립트를 Page 호출할 수 있도록 하는 키 및 URL을 사용하여 개체에 클라이언트 스크립트를 등록합니다.

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.

설명

클라이언트 스크립트 포함은 키와 해당 형식으로 고유하게 식별됩니다. 키와 형식이 같은 스크립트는 중복된 것으로 간주됩니다. 지정된 형식과 키 쌍을 가진 하나의 스크립트만 페이지에 등록할 수 있습니다. 이미 등록된 스크립트를 등록하려고 시도해도 스크립트가 중복되지 않습니다.

메서드를 IsClientScriptIncludeRegistered 호출하여 클라이언트 스크립트에 지정된 키와 형식 쌍이 이미 등록되어 있는지 여부를 확인하고 스크립트를 불필요하게 추가하려고 시도하지 않도록 합니다.

메모

클라이언트 URL을 확인하려면 메서드를 ResolveClientUrl 사용합니다. 이 메서드는 경로를 확인하기 위해 호출되는 URL의 컨텍스트를 사용합니다.

메서드의 RegisterClientScriptInclude 이 오버로드는 , a 및 매개 변수를 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 를 식별하고 클라이언트 스크립트의 ID를 지정하는 매개 변수를 포함합니다. 리소스에 액세스할 개체에 따라 형식을 지정합니다. 예를 들어 인스턴스를 Page 사용하여 리소스에 액세스하는 경우 형식을 지정합니다 Page .

메모

클라이언트 URL을 확인하려면 메서드를 ResolveClientUrl 사용합니다. 이 메서드는 경로를 확인하기 위해 호출되는 URL의 컨텍스트를 사용합니다.

이 메서드는 렌더링된 페이지의 맨 위에 스크립트 블록을 추가합니다.

추가 정보

적용 대상