Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
ASP's effectiveness can be extended by using it to generate or manipulate client-side scripts. For example, you can write server-side scripts that assemble client-side scripts based on server-specific variables, a user's browser type, or HTTP request parameters.
By interspersing server-side script statements within client-side scripts (enclosed by HTML <SCRIPT> tags), as shown in the following example template, you can dynamically initialize and alter client-side scripts at the request time:
<SCRIPT LANGUAGE="VBScript">
<!--
variable = <%=
server defined value %>
.
.
.
client-side script
<%
server-side script used to generate a client-side statement %>
client-side script
.
.
.
-->
</SCRIPT>
Incorporating such functionality can produce some useful and interesting applications. For example, the following is a simple server-side script (written in VBScript) that manipulates a client-side script (written in 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>
Scripts of this kind can be expanded, for example, to configure a client-side database or a DHTML personalization script. Innovative use of this technique can also reduce round-trips and server processing.