ASP を使用してクライアント側のスクリプトを生成または操作すると、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")
'Generate a random number.
Randomize
intGreeting = int(rnd * 3)
%>
<SCRIPT LANGUAGE="JScript">
<!--
//Call function to display greeting
showIntroMsg()
function showIntroMsg()
{
switch(<%= intGreeting %>)
{
case 0:
msg = "This is the <%= strServerName%> Web server running <%= strServerSoftware %>."
break
case 1:
msg = "Welcome to the <%= strServerName%> Web server. The local time is <%= dtmTime %>."
break
case 2:
msg = "This server is running <%= strServerSoftware %>."
break
}
document.write(msg)
}
-->
</SCRIPT>
この種のスクリプトを拡張して、たとえば、クライアント側のデータベースや DHTML のカスタマイズ スクリプトを構成することができます。この新しい技法を使用すると、ラウンドトリップおよびサーバーでの処理時間を減らすこともできます。