C#

public void RegisterStartupScript (

            Type type,

            string key,

            string script,

            bool addScriptTags

)

 

매개 변수

type

등록할 시작 스크립트의 형식입니다.

key

등록할 시작 스크립트의 키입니다.

script

등록할 시작 스크립트 리터럴입니다.

addScriptTags

스크립트 태그를 추가할지 여부를 나타내는 부울 값입니다.

설명

시작 스크립트는 해당 키와 형식에 의해 고유하게 식별됩니다. 형식이 같은 스크립트는 중복된 것으로 간주됩니다. 지정된 형식과 쌍을 사용하는 스크립트 하나만 페이지에 등록할 있습니다. 이미 등록된 스크립트를 등록하려고 하면 중복 스크립트가 만들어지지 않습니다.

지정한 키와 형식 쌍으로 시작 스크립트가 이미 등록되어 있는지 여부를 확인하여 스크립트를 추가하려는 불필요한 시도를 방지하려면 IsStartupScriptRegistered 메서드를 호출합니다.

RegisterStartupScript 메서드의 오버로드에서는 addScriptTags 사용하여 script 매개 변수에 제공된 스크립트가 <script> 요소 블록으로 래핑되는지 여부를 나타낼 있습니다. addScriptTags true 설정하면 스크립트 태그가 자동으로 추가됩니다.

RegisterStartupScript 메서드가 추가한 스크립트 블록은 페이지에서 로드가 끝날 OnLoad 이벤트가 발생하기 전에 실행됩니다.

예제

다음 코드 예제에서는 RegisterStartupScript 메서드의 사용 방식을 보여 줍니다. addScriptTags 매개 변수를 false 설정하면 여는 스크립트 태그와 닫는 스크립트 태그가 script 매개 변수에 포함됩니다.

 

C#

코드 복사

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

<script runat="server">

  public void Page_Load(Object sender, EventArgs e)

  {

    // Define the name and type of the client scripts on the page.

    String csname1 = "PopupScript";

    String csname2 = "ButtonClickScript";

    Type cstype = this.GetType();

       

    // Get a ClientScriptManager reference from the Page class.

    ClientScriptManager cs = Page.ClientScript;

 

    // Check to see if the startup script is already registered.

    if (!cs.IsStartupScriptRegistered(cstype, csname1))

    {

      String cstext1 = "alert('Hello World');";

      cs.RegisterStartupScript(cstype, csname1, cstext1, true);

    }

 

    // Check to see if the client script is already registered.

    if (!cs.IsClientScriptBlockRegistered(cstype, csname2))

    {

      StringBuilder cstext2 = new StringBuilder();

      cstext2.Append("<script type=text/javascript> function DoClick() {");

      cstext2.Append("Form1.Message.value='Text from client script.'} </");

      cstext2.Append("script>");

      cs.RegisterClientScriptBlock(cstype, csname2, cstext2.ToString(), false);

    }

  }

</script>

<html>

  <head>

    <title>ClientScriptManager Example</title>

  </head>

  <body>

             <form id="Form1"

         runat="server">

                        <input type="text" id="Message"> <input type="button" value="ClickMe" onclick="DoClick()">

             </form>

  </body>

</html>

 

출처 : Microsoft Visual Studio 2005 설명서

+ Recent posts