在服务器端使用脚本语言,需要在服务器端安置脚本引擎。脚本引擎是用于处理脚本的COM(组件对象模型)对象。ASP为脚本引擎提供主机环境并把.asp文件中的脚本交给脚本引擎处理。对于.asp文件中使用的每种脚本语言,都要将他们相应的脚本引擎安置在Web服务器上。ASP中缺省语言是VBScript,所以你不用担忧要去安置VBScript的脚本引擎,当你安置完ActiveServerPages时,他就已存在了。使用JScript也不必有同样的担忧。可是要使用一些不太经常使用的脚本语言的话,可能需要安置相应的脚本引擎。
ASP使Web开发者可以用各种脚本语言编写程序而不用担忧浏览器是否支持。其实,在一个.asp文件中就可以使用多种脚本语言,只要你在每段脚本程序开始处用HTML标签标明所用的脚本语言。
VBScript是缺省的主脚本语言。主脚本语言用在定界符<%和%>之内,你可以在定界符之内使用任何有效的VBScript命令,ASP会按VBScript处理这些命令。其实,你可以将任一种脚本语言设为主脚本语言。你可以苦口婆心的一页一页的设置,也可以将某一种脚本语言设为你的Web服务器上所有页的主脚本语言。假如你想在某一页中将一种脚本语言设为主角本语言,只要在.asp文件开始处加上如下的命令即可。
<%@LANGUAGE=ScriptingLanguage%>其中,ScriptingLanguage代表你想设置的主脚本语言。如若你想将某一种脚本语言设为你的Web服务器上所有页的主脚本语言,你就需要动用功能强大的RegisterEditor(注册编辑器,regedit.exe),ASP注册参数的注册路径如下:
HKEY_LOCAL_MACHINE\SYSTEM
\CurrentControlSet
\Services
\W3SVC
\ASP
\Parameters
其中,注册表项DefaultScriptLanguage的缺省值是"VBScript",将其改为欲设置的脚本语言即可。例如,若想将JScript设为主角本语言,则将注册表项DefaultScriptLanguage的值改为"JScript"就OK了。在同一个.asp文件中混合使用不一样的脚本语言是ASP迷人的特色之一。这样,你就可以施展各种不一样的脚本语言在不同方面的优势。你可以用不一样的脚本语言编写不一样的脚本程序来完成不一样的工作。
脚本程序实际上就是一组执行特定任务的脚本命令。假如你我们时常要执行某一组特定任务,你就可以将之定义成程序,然后重复调用。程序要按特定的脚本语言的规则写在标签<SCRIPT>和</SCRIPT>之间。当然,假如你用主脚本语言写程序的话,写在定界符<%和%>之间也可以。假如你的程序只在某一页内调用的话,把它放在这一页内就OK了,假如你在多页中都要调用某些程序的话,你可以把这些程序放在一个单独的.asp文件中,然后在每个要调用这些程序的.asp页中将那个.asp文件包含进来。
要在.asp页中包含其它文件,使用以下的语法:
<!--#INCLUDEVIRTUAL FILE="filename"-->
其中,filename是你要包含的文件。关键字VIRTUAL和FILE任选其一,VIRTUAL表示要包含的文件在一个虚拟目录内(该目录为Web共享目录),FILE表示要包含的文件在一个当前文件相关目录内。例示如下:假设你有两个Web共享目录Dir1和Dir2,目录Dir1内有文件file11.asp和file12.asp,目录Dir2下有文件file2,若要在文件file11.asp中包含file2.asp,则将如下命令加入到文件file11.asp中:
<!--INCLUDEVIRTUAL="Dir2/file2.asp"-->
<SCRIPTLANGUAGE=VBScriptRUNAT=Server>
SubEcho
Response.Write_
"<TR><TD>Name</TD><TD>Value</TD></TR>"
SetParams=Request.QueryString
ForEachpinParams
Response.Write"<TR><TD>"&p&"</TD><TD>"&_
Params(p)&"</TD></TR>"
Next
EndSub
</SCRIPT>
<SCRIPTLANGUAGE=JScriptRUNAT=Server>
functionPrintDate()
{
varx
x=newDate()
Response.Write(x.toString())
}
</SCRIPT>