ClientScriptManager 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
웹 애플리케이션에서 클라이언트 스크립트를 관리하는 메서드를 정의합니다.
public ref class ClientScriptManager sealed
public sealed class ClientScriptManager
type ClientScriptManager = class
Public NotInheritable Class ClientScriptManager
- 상속
-
ClientScriptManager
예제
다음 코드 예제에서는 합니다 RegisterClientScriptBlock 메서드는 ClientScriptManager 클래스입니다. 두 개의 클라이언트 스크립트가 페이지에 정의 된: PopupScript
, 페이지가 로드 될 때 경고 메시지를 표시 하는 하 고 ButtonClickScript
를 HTML 단추에 대 한 클라이언트 처리기를 정의 하는 onClick
이벤트입니다.
<%@ 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 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 xmlns="http://www.w3.org/1999/xhtml" >
<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>
<%@ 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 and type of the client scripts on the page.
Dim csname1 As String = "PopupScript"
Dim csname2 As String = "ButtonClickScript"
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 startup script is already registered.
If (Not cs.IsStartupScriptRegistered(cstype, csname1)) Then
Dim cstext1 As String = "alert('Hello World');"
cs.RegisterStartupScript(cstype, csname1, cstext1, True)
End If
' Check to see if the client script is already registered.
If (Not cs.IsClientScriptBlockRegistered(cstype, csname2)) Then
Dim cstext2 As 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)
End If
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<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>
설명
ClientScriptManager 클래스 클라이언트 스크립트를 관리 하 고 웹 애플리케이션에 추가 하는 데 사용 됩니다. 에 대 한 참조를 가져올 수 있습니다는 ClientScriptManager 에서 클래스를 ClientScript 의 속성을 Page 개체입니다.
추가할 수 있습니다 클라이언트 스크립트를 웹 페이지에 선언적으로 페이지의 HTML 태그에서 스크립트를 포함 하 여. 그러나 클라이언트 스크립트를 동적으로 추가 해야 하는 경우가 있습니다. 동적으로 스크립트를 추가 하려면 사용 합니다 RegisterClientScriptBlock 메서드를를 RegisterClientScriptInclude 메서드를를 RegisterStartupScript 메서드를 또는 RegisterOnSubmitStatement 스크립트를 추가 하려는 방법과 시기에 따라 메서드를 합니다. 자세한 내용은 방법: 추가 클라이언트 스크립트 동적 ASP.NET 웹 페이지에입니다.
합니다 ClientScriptManager 클래스는 키로 스크립트를 고유 하 게 식별 String 및 Type합니다. 동일한 키와 형식을 사용 하 여 스크립트에는 중복으로 간주 됩니다. 스크립트 유형을 사용 하는 작업은 페이지에서 사용에서 될 수 있는 다른 사용자 정의 컨트롤의 유사한 스크립트를 혼동 하지 않으려면 수 있습니다.
ClientScriptManager 클래스를 사용 하 여 포스트백을 수행 하지 않고 클라이언트에서 서버 코드를 실행 하는 것이 바람직한 경우 상황에서 클라이언트 콜백은 호출할 수 있습니다. 이 서버는 대역의 콜백을 수행 이라고 합니다. 클라이언트 콜백을 클라이언트 스크립트 함수는 ASP.NET 웹 페이지에는 비동기 요청을 보냅니다. 웹 페이지 콜백 처리할 일반적인 수명 주기의의 수정된 된 버전을 실행합니다. 사용 된 GetCallbackEventReference 메서드를 호출 하면 클라이언트 함수에 대 한 참조를 얻으려면 서버 이벤트에 대 한 클라이언트 콜백을 시작 합니다. 자세한 내용은 포스트백 없이 클라이언트 콜백 구현합니다.
참고
스크립트 콜백 문서 개체 모델 (DOM)을 지원 하지 않는 이전 브라우저에서 작동 하지 않으며 ECMAScript 클라이언트에서 활성화 되어 있는지 필요 합니다. 브라우저에서 콜백을 지원 하는지 확인 하려면 사용 합니다 SupportsCallback 속성을 통해 액세스할 수 있는 합니다 Browser asp.net 내장 속성 Request 개체.
사용 된 GetPostBackEventReference 메서드 및 GetPostBackClientHyperlink 클라이언트 포스트백 이벤트를 정의 하는 방법입니다. 이러한 메서드는 페이지에 다시 게시 하 여 서버를 호출 하면 클라이언트 스크립트 함수를 사용 합니다. 클라이언트 다시 게시 이벤트를 클라이언트 포스트백 이벤트를 프로세스에는 일반적인 수명 주기를 완료 하는 웹 페이지에는 클라이언트 콜백와 다릅니다.
참고
사용 중인 경우를 Button 컨트롤 및 UseSubmitBehavior 속성이로 설정 되어 false
를 사용할 수 있습니다를 GetPostBackEventReference 클라이언트를 반환 하는 방법에 대 한 이벤트를 포스트백를 Button 컨트롤입니다.
OnClientClick 의 속성을 Button 컨트롤 ImageButton 컨트롤 및 LinkButton 클라이언트 스크립트를 실행 하려면 컨트롤을 사용할 수 있습니다.
메서드
Equals(Object) |
지정된 개체가 현재 개체와 같은지 확인합니다. (다음에서 상속됨 Object) |
GetCallbackEventReference(Control, String, String, String) |
호출될 경우 클라이언트에서 서버 이벤트를 콜백하도록 하는 클라이언트 함수에 대한 참조를 가져옵니다. 이 오버로드된 메서드의 클라이언트 함수에는 지정한 컨트롤, 인수, 클라이언트 스크립트 및 컨텍스트가 포함됩니다. |
GetCallbackEventReference(Control, String, String, String, Boolean) |
호출될 경우 클라이언트에서 서버 이벤트를 콜백하도록 하는 클라이언트 함수에 대한 참조를 가져옵니다. 이 오버로드된 메서드의 클라이언트 함수에는 지정한 컨트롤, 인수, 클라이언트 스크립트, 컨텍스트 및 부울 값이 포함됩니다. |
GetCallbackEventReference(Control, String, String, String, String, Boolean) |
호출될 경우 클라이언트에서 서버 이벤트를 콜백하도록 하는 클라이언트 함수에 대한 참조를 가져옵니다. 이 오버로드된 메서드의 클라이언트 함수에는 지정한 컨트롤, 인수, 클라이언트 스크립트, 컨텍스트, 오류 처리기 및 부울 값이 포함됩니다. |
GetCallbackEventReference(String, String, String, String, String, Boolean) |
호출될 경우 클라이언트에서 서버 이벤트를 콜백하도록 하는 클라이언트 함수에 대한 참조를 가져옵니다. 이 오버로드된 메서드의 클라이언트 함수에는 지정한 대상, 인수, 클라이언트 스크립트, 컨텍스트, 오류 처리기 및 부울 값이 포함됩니다. |
GetHashCode() |
기본 해시 함수로 작동합니다. (다음에서 상속됨 Object) |
GetPostBackClientHyperlink(Control, String) |
지정된 이벤트 인수를 사용하여 지정된 컨트롤을 서버에 다시 게시하는 클라이언트 이벤트에 사용할 수 있는 참조를 가져옵니다. 이 참조의 시작 부분에는 |
GetPostBackClientHyperlink(Control, String, Boolean) |
지정된 이벤트 인수와 이벤트 유효성 검사에 대한 다시 게시를 등록할지 여부를 나타내는 부울 값을 사용하여 지정된 컨트롤에 대해 서버에 다시 게시하는 클라이언트 이벤트에 사용할 수 있는 참조를 가져옵니다. 이 참조의 시작 부분에는 |
GetPostBackEventReference(Control, String) |
서버에 다시 게시 작업을 발생시키는 클라이언트 이벤트에 사용할 수 있는 문자열을 반환합니다. 참조 문자열은 다시 게시 작업과 추가 이벤트 정보의 문자열 인수를 처리하는 지정된 컨트롤에 의해 정의됩니다. |
GetPostBackEventReference(Control, String, Boolean) |
서버에 다시 게시 작업을 발생시키는 클라이언트 이벤트에 사용할 문자열을 반환합니다. 참조 문자열은 다시 게시 작업과 추가 이벤트 정보의 문자열 인수를 처리하는 지정된 컨트롤에 의해 정의됩니다. 유효성 검사에 대한 이벤트 참조도 선택적으로 등록합니다. |
GetPostBackEventReference(PostBackOptions) |
서버에 다시 게시 작업을 발생시키는 클라이언트 이벤트에 사용할 수 있는 문자열을 반환합니다. 참조 문자열은 지정한 PostBackOptions 인스턴스에 의해 정의됩니다. |
GetPostBackEventReference(PostBackOptions, Boolean) |
서버에 다시 게시 작업을 발생시키는 클라이언트 이벤트에 사용할 수 있는 문자열을 반환합니다. 참조 문자열은 지정된 PostBackOptions 개체에 의해 정의됩니다. 유효성 검사에 대한 이벤트 참조도 선택적으로 등록합니다. |
GetType() |
현재 인스턴스의 Type을 가져옵니다. (다음에서 상속됨 Object) |
GetWebResourceUrl(Type, String) |
어셈블리의 리소스에 대한 URL 참조를 가져옵니다. |
IsClientScriptBlockRegistered(String) |
클라이언트 스크립트 블록이 지정한 키를 사용하여 Page 개체에 등록되는지 여부를 결정합니다. |
IsClientScriptBlockRegistered(Type, String) |
클라이언트 스크립트 블록이 키와 형식을 사용하여 Page 개체에 등록되는지 여부를 결정합니다. |
IsClientScriptIncludeRegistered(String) |
클라이언트 스크립트 포함이 지정한 키를 사용하여 Page 개체에 등록되는지 여부를 결정합니다. |
IsClientScriptIncludeRegistered(Type, String) |
클라이언트 스크립트 포함이 키와 형식을 사용하여 Page 개체에 등록되는지 여부를 결정합니다. |
IsOnSubmitStatementRegistered(String) |
OnSubmit 문이 지정한 키를 사용하여 Page 개체에 등록되는지 여부를 결정합니다. |
IsOnSubmitStatementRegistered(Type, String) |
OnSubmit 문이 지정한 키와 형식을 사용하여 Page 개체에 등록되는지 여부를 결정합니다. |
IsStartupScriptRegistered(String) |
시작 스크립트가 지정한 키를 사용하여 Page 개체에 등록되는지 여부를 결정합니다. |
IsStartupScriptRegistered(Type, String) |
시작 스크립트가 지정한 키와 형식을 사용하여 Page 개체에 등록되는지 여부를 결정합니다. |
MemberwiseClone() |
현재 Object의 단순 복사본을 만듭니다. (다음에서 상속됨 Object) |
RegisterArrayDeclaration(String, String) |
배열 이름과 배열 값을 사용하여 Page 개체에 JavaScript 배열 선언을 등록합니다. |
RegisterClientScriptBlock(Type, String, String) |
형식, 키 및 스크립트 리터럴을 사용하여 클라이언트 스크립트를 Page 개체에 등록합니다. |
RegisterClientScriptBlock(Type, String, String, Boolean) |
형식, 키, 스크립트 리터럴 및 스크립트 태그를 추가할지 여부를 나타내는 부울 값을 사용하여 클라이언트 스크립트를 Page 개체에 등록합니다. |
RegisterClientScriptInclude(String, String) |
키와 URL을 사용하여 Page 개체와 함께 클라이언트 스크립트를 등록하여 클라이언트에서 스크립트를 호출할 수 있습니다. |
RegisterClientScriptInclude(Type, String, String) |
형식, 키 및 URL을 사용하여 클라이언트 스크립트 포함을 Page 개체에 등록합니다. |
RegisterClientScriptResource(Type, String) |
형식과 리소스 이름을 사용하여 클라이언트 스크립트 리소스를 Page 개체에 등록합니다. |
RegisterExpandoAttribute(String, String, String) |
컨트롤 ID, 특성 이름 및 특성 값이 제공되면 이름/값 쌍을 지정한 컨트롤의 사용자 지정(expando) 특성으로 등록합니다. |
RegisterExpandoAttribute(String, String, String, Boolean) |
컨트롤 ID, 특성 이름, 특성 값 및 특성 값을 인코딩할지 여부를 나타내는 부울 값이 제공되면 이름/값 쌍을 지정한 컨트롤의 사용자 지정(expando) 특성으로 등록합니다. |
RegisterForEventValidation(PostBackOptions) |
PostBackOptions를 사용하여 유효성 검사에 대한 이벤트 참조를 등록합니다. |
RegisterForEventValidation(String) |
이벤트를 생성하는 클라이언트 컨트롤을 나타내는 고유 컨트롤 ID를 사용하여 유효성 검사에 대한 이벤트 참조를 등록합니다. |
RegisterForEventValidation(String, String) |
이벤트를 생성하는 클라이언트 컨트롤을 나타내는 고유 컨트롤 ID와 이벤트 인수를 사용하여 유효성 검사에 대한 이벤트 참조를 등록합니다. |
RegisterHiddenField(String, String) |
숨겨진 값을 Page 개체에 등록합니다. |
RegisterOnSubmitStatement(Type, String, String) |
형식, 키 및 스크립트 리터럴을 사용하여 OnSubmit 문을 Page 개체에 등록합니다. 이 문은 HtmlForm을 전송할 때 실행됩니다. |
RegisterStartupScript(Type, String, String) |
형식, 키 및 스크립트 리터럴을 사용하여 시작 스크립트를 Page 개체에 등록합니다. |
RegisterStartupScript(Type, String, String, Boolean) |
형식, 키, 스크립트 리터럴 및 스크립트 태그를 추가할지 여부를 나타내는 부울 값을 사용하여 시작 스크립트를 Page 개체에 등록합니다. |
ToString() |
현재 개체를 나타내는 문자열을 반환합니다. (다음에서 상속됨 Object) |
ValidateEvent(String) |
RegisterForEventValidation(String) 메서드를 사용하여 이벤트 유효성 검사에 대해 등록된 클라이언트 이벤트의 유효성을 검사합니다. |
ValidateEvent(String, String) |
RegisterForEventValidation(String, String) 메서드를 사용하여 이벤트 유효성 검사에 대해 등록된 클라이언트 이벤트의 유효성을 검사합니다. |
적용 대상
추가 정보
.NET