다음을 통해 공유


클라이언트 스크립트를 사용하는 ASP.NET 웹 서버 컨트롤

업데이트: 2007년 11월

일부 ASP.NET 서버 컨트롤의 기능은 클라이언트 스크립트를 기반으로 합니다. 또한 ASP.NET 페이지의 일부 기능도 클라이언트 스크립트를 기반으로 합니다. ASP.NET 컨트롤 및 페이지에서의 클라이언트 스크립트 사용 방식을 알고 있으면 각 브라우저의 클라이언트 스크립트 지원 방식 차이가 ASP.NET 웹 페이지에 어떤 영향을 주는지 이해하는 데 유용합니다.

요소 목록

다음 표에서는 클라이언트 스크립트를 사용하는 컨트롤 및 컨트롤 멤버를 보여 주고 클라이언트 스크립트에서 제공하는 기능에 대해 설명합니다.

컨트롤

클라이언트 스크립트 기능

Page, HtmlForm, Panel

다음 속성을 사용하려면 클라이언트 스크립트가 필요합니다.

UpdatePanel

클라이언트 스크립트는 부분 페이지 렌더링(비동기 포스트백)에 사용되며 이 컨트롤에서 중요한 역할을 합니다.

UpdateProgress

클라이언트 스크립트는 비동기 포스트백 요청을 보류하고 있는 동안 사용자에게 상태를 표시하는 데 사용되며 이 컨트롤에서 중요한 역할을 합니다.

ScriptManager

이 컨트롤은 클라이언트 스크립트 파일을 관리하고 Microsoft AJAX 라이브러리를 로드합니다.

Timer

클라이언트 스크립트는 브라우저의 포스트백 이벤트를 정의된 간격으로 수행하는 데 사용됩니다.

LinkButton, ImageButton, HtmlButton

참고:
여기에는 클라이언트 스크립트가 필요하지 않은 Button 컨트롤, HtmlInputButton 컨트롤 또는 HtmlInputImage 컨트롤은 포함되지 않습니다.

포스트백 이벤트를 지원하기 위해 클라이언트 스크립트가 사용됩니다.

Calendar

이 컨트롤은 LinkButton 컨트롤을 사용하여 일, 주 및 월 탐색을 구현하고 LinkButton 컨트롤은 포스트백 이벤트에 클라이언트 스크립트를 사용합니다. Calendar 컨트롤을 사용하여 선택 또는 탐색 기능 없이 하나의 월만 표시할 경우 컨트롤에 클라이언트 스크립트가 필요하지 않습니다.

DetailsView

컨트롤에 편집, 페이징 등을 위해 LinkButton 컨트롤로 구성된 단추가 포함되어 있는 경우 이러한 기능을 수행하려면 클라이언트 스크립트가 필요합니다.

연결된 데이터 소스 컨트롤에서 이 기능을 지원하는 경우 클라이언트 스크립트를 사용하여 페이지를 매길 수 있습니다.

EnablePagingCallbacks 속성이 true인 경우 클라이언트 스크립트를 사용하여 콜백을 관리합니다.

GridView

컨트롤에 편집, 페이징 등을 위해 LinkButton 컨트롤로 구성된 단추가 포함되어 있는 경우 이러한 기능을 수행하려면 클라이언트 스크립트가 필요합니다.

연결된 데이터 소스 컨트롤에서 이 기능을 지원하는 경우 클라이언트 스크립트를 사용하여 정렬하고 페이지를 매길 수 있습니다.

EnableSortingAndPagingCallbacks 속성이 true인 경우 클라이언트 스크립트를 사용하여 콜백을 관리합니다.

Label

AssociatedControlID 속성은 AccessKey 속성과 함께 사용되어 바로 가기 키에 대한 응답으로 적절한 컨트롤에 포커스를 설정할 클라이언트 스크립트를 생성합니다. 이러한 속성이 설정되어 있지 않으면 이 컨트롤에 클라이언트 스크립트가 필요하지 않습니다.

Menu

클라이언트 스크립트를 사용하여 메뉴 항목 열기/닫기, 팝아웃 패널 표시, 사용자가 마우스 포인터를 메뉴 항목 위로 가져갈 때 표시 제어 등의 작업을 수행합니다.

TreeView

클라이언트 스크립트를 사용하여 노드를 열고 닫습니다. 또한 요청 시 노드를 채우도록 TreeView 컨트롤이 구성되어 있는 경우에도 클라이언트 스크립트가 사용됩니다.

포스트백 이후에 서버 코드에서 선택 동작이 수행되는 경우 TreeView 컨트롤에 대해 클라이언트 스크립트를 사용하지 않도록 설정할 수 있습니다. 그러나 노드 자체가 클라이언트 스크립트를 사용하여 포스트백을 수행하는 링크로 렌더링됩니다. 따라서 브라우저에서 클라이언트 스크립트를 지원하지 않으면 TreeView에서 포스트백을 수행할 수 없습니다.

AutoPostBack 속성이 true로 설정된 모든 웹 서버 컨트롤

단추가 아닌 컨트롤의 AutoPostBack 속성 동작은 클라이언트 스크립트를 사용하여 구현됩니다.

웹 파트 컨트롤

클라이언트 스크립트를 사용하여 끌어서 놓기 동작을 지원하고 영역, 동사 및 가져오기/내보내기 기능에 웹 파트 컨트롤을 추가합니다.

유효성 검사기 컨트롤

클라이언트 스크립트를 사용하여 유효성 검사 피드백을 즉시 제공합니다. 클라이언트에서 스크립트를 지원하지 않으면 유효성 검사가 서버에서만 실행됩니다.

컨트롤에 포커스를 설정하는 메서드 또는 속성(예: 컨트롤의 Focus 메서드 및 페이지의 SetFocus 메서드)

클라이언트 스크립트를 사용하여 지정된 컨트롤에 포커스를 설정합니다.

이러한 컨트롤과 멤버에 필요한 클라이언트 스크립트가 자동으로 생성되고 페이지의 일부로 전달됩니다. 이러한 클라이언트 스크립트는 ECMAScript(JScript, JavaScript)를 지원하는 모든 브라우저와 호환됩니다. 즉, DHTML(동적 HTML)의 고급 스크립팅 기능을 필요로 하지 않습니다. 그러나 전체 기능을 구현하려면 Microsoft Internet Explorer 버전 5.5 이상이 필요한 웹 파트 컨트롤 집합은 예외입니다.

참고:

브라우저에서 DHTML을 사용할 수 있는 경우 일부 유효성 검사 기능에서 DHTML을 사용할 수 있지만 반드시 필요한 것은 아닙니다.

보안을 위해 사용자가 브라우저에서 스크립트를 비활성화하는 경우도 있습니다. 이런 경우 클라이언트 스크립트에서 제공하는 기능이 손실됩니다. 또한 LinkButton 컨트롤과 같은 일부 컨트롤을 완전히 사용할 수 없게 되고 AutoPostBack 속성의 기능을 사용할 수 없게 됩니다. 유효성 검사는 부분적으로만 영향을 받으며 서버에서 계속 수행되지만 사용자는 클라이언트 기반 유효성 검사를 즉시 받지 못합니다.

참고 항목

개념

ASP.NET 웹 페이지의 클라이언트 스크립트

ASP.NET 웹 서버 컨트롤의 탭 순서, 포커스 및 선택키