클라이언트쪽 스크립트와 상호 작용

클라이언트쪽 스크립트를 만들거나 조작하는 데 ASP의 효과를 사용함으로써 그 효과를 확장시킬 수 있습니다. 예를 들어, 서버의 특정 변수, 사용자의 브라우저 형식, HTTP 요청 매개 변수를 기반으로 한 클라이언트쪽 스크립트를 그룹화하는 서버쪽 스크립트를 작성할 수 있습니다.

다음 예제 템플릿에 표시된 대로 클라이언트쪽 스크립트(HTML <SCRIPT> 태그로 둘러 싸인) 내에 서버쪽 스크립트 문을 적절히 배치하여 요청 시간에 클라이언트쪽 스크립트를 동적으로 초기화하거나 변경할 수 있습니다.

<SCRIPT LANGUAGE="VBScript">
<!--

variable = <%=server defined value %>
.
.
.

client-side script

<% server-side script used to generate a client-side statement %>

client-side script
.
.
.
-->
</SCRIPT>

이러한 기능을 통합하여 유용하고 흥미로운 응용 프로그램을 만들 수 있습니다. 예를 들어, 다음은 VBScript에서 작성한 간단한 서버쪽 스크립트입니다. 서버쪽 스크립트는 JScript에서 작성한 클라이언트쪽 스크립트를 조작합니다.

<%
Dim dtmTime, strServerName, strServerSoftware, intGreeting

dtmTime = Time()
strServerName = Request.ServerVariables("SERVER_NAME")
strServerSoftware = Request.ServerVariables("SERVER_SOFTWARE")

'임의의 숫자를 생성합니다. 
Randomize
intGreeting = int(rnd * 3)
%>

<SCRIPT LANGUAGE="JScript">
  <!--

//함수를 호출하여 인사 메시지를 나타냅니다. 
showIntroMsg()

function showIntroMsg()
  {
switch(<%= intGreeting %>)
    {
case 0:
msg =  "<%= strServerSoftware %>를 실행하는 <%= strServerName%> 웹 서버입니다. "
break
case 1:
msg = "<%= strServerName%> 웹 서버에 오신 것을 환영합니다.  현지 시간은 <%= dtmTime %>입니다. "
break
case 2:
msg = "이 서버는 <%= strServerSoftware %>을(를) 실행하고 있습니다. "
break
    }

document.write(msg)

  }

-->
</SCRIPT>

예를 들어, 이러한 종류의 스크립트는 클라이언트쪽 데이터베이스나 DHTML 개인 스크립트를 구성하는 데 사용될 수 있습니다. 이러한 혁신적인 기술의 사용은 왕복 시간과 서버 처리 시간을 단축시킵니다.


ⓒ 1997-2001 Microsoft Corporation.All rights reserved.