交互式网页设计文档格式.docx
- 文档编号:20048854
- 上传时间:2023-01-16
- 格式:DOCX
- 页数:54
- 大小:352.01KB
交互式网页设计文档格式.docx
《交互式网页设计文档格式.docx》由会员分享,可在线阅读,更多相关《交互式网页设计文档格式.docx(54页珍藏版)》请在冰豆网上搜索。
”,而晚上7点到12点浏览时,将看到“晚上好!
”。
在语句的不同部分之间也可直接加入HTML文本,如下面的脚本在If…Then…Else语句中加入了HTML文本,结果与上面的脚本一样:
HTML>
BODY>
%IfTime<
#12:
00#AndTime>
=#00:
00#Then%>
早上好!
〈%ElseIfTime〈#19:
00#AndTime〉=#12:
00#Then%>
下午好!
%Else%>
晚上好!
%EndIf%>
如果不想将HTML文本置于脚本命令之间,则可用Response对象的Write方法将文本发送到浏览器。
例如:
IfTime〈#12:
00#AndTime>
=#00:
Response.Write”早上好!
ElseTime<
#19:
Response.Write”上午好!
Else
Response.Write”晚上好!
ASP提供了脚本语言以外的命令:
输出命令和处理命令。
输出命令指〈%=expression%〉显示表达式值。
例如,前面的〈%=strGreeting%〉就是用于将问候语传到浏览器的输出命令。
输出命令等同于用Response对象的Write方法显示信息。
处理命令〈%kerword%〉为ASP提供处理.asp文件所需要的信息。
例如,以下命令将JScript设为主脚本语言:
〈%LANGUAGE=Jscript%〉
处理命令必须出现在.asp文件的第一行,而且和关键字之间必须加入一个空格。
2、ASP的脚本引擎(ASP解释程序)
(1)运行ASP所需的环境如下表:
操作系统
WEB服务器脚本引擎
WINDOWSNTSERVE4.0或更高版本
InternetInformationServer3.0以上(IIS)
WINDOWS95或更高版本
PersonalWebServer3.0或更高版本(PWS)
7.1.2ASP的工作流程
由上图可以看出:
①当浏览器项Web服务器请求执行.asp文件时,服务器调用ASP;
②ASP全面读取被请求的ASP文件,并在服务器端执行;
③Web服务器将执行结果以HTML页面的形式传送给浏览器。
7.2脚本语言基础
7.2.1VBscript基础知识
(一)服务器端脚本和客户端脚本
使用VBScript和JScript,即可编写服务器端脚本,也可编写客户端脚本。
服务器端脚本是在Web服务器上执行,生成发送到浏览器的HTML页面由Web服务器负责。
在ASP中,服务器端脚本要用分隔符〈%和%〉括起,或者在〈SCRIPT〉〈/SCRIPT〉标记中要用RUNAT=Server表示脚本在服务器端执行。
客户端脚本由〈SCRIPT〉〈/SCRIPT〉嵌入到HTML页面中,由浏览器执行。
下面是一个简单的客户端脚本的实例:
HEAD>
TITLE>
简单的VBScript程序〈/TITLE>
SCRIPTLANGUAGE=VBScript>
!
--
SubButtonl_OnClick
DimfrmTmp’声明一个变量
SetfrmTmp=Document.Form1’用Set语句将表单赋给变量
IfIsNumeric(frmTmp.Text1.Value)Then’确定文本框中输入的是否是数字
IffrmTmp.Text1.Value<
1OrfrmTmp.Text1.Value>
50Then
MsgBox”请输入1到50之间的数字!
“
FrmTmp.Submit’输入正确,传递到服务器
Else
MsgBox”请输入数字!
EndSub
-->
/SCRIPT>
/HEAD>
BODYbgColor=”White”>
H2>
请输入1到50之间的数字:
〈/H2〉〈HR〉
FORMNAME=”Form1”>
INPUTNAME=”Text1”TYPE=”TEXT”>
INPUTNAME=”Button1”TYPE=”BUTTON”VALUE=”提交”>
/FORM>
用浏览器打开该文档时,将显示一个文本框和一个按钮。
在文本框中输入数字后,单击提交按钮,浏览器会查找并执行事件过程Button1-OnClick。
执行时将调用表单的Submit方法将数据提交到服务器。
若输入不正确,如不是数字或小于1或大于50,则会调用MsgBbox语句产生信息框来提示输入正确的数字。
(二)VBScript语法特点
VBScript是VisualBasic的一个子集,编程方法和VisualBasic基本相同,但有相当多的VisualBasic特性在VBScript中都被删去了。
例如,VBScript只有一种数据类型,即Variant类型,而VisualBasic却具有大部分通用程序语言所具有的数据类型;
VBScript不支持VisualBasic中传统的文件I/O功能,即不能通过Open语句与其他相关的语句和函数在客户机上读写文件,这样防止了可能对客户机造成的危害。
1、将单行文本分成多行文本
有时一条语句可能会很长,这给打印和阅读带来不便,此时可用续行符
“_“(一个空格紧跟一个下划线)将长语句分成多行。
%
strTemp=”东方欲晓,莫道君行早。
”&
_
“踏遍青山人未老,风景这边独好。
“会昌城外高峰,颠连直接东溟。
“战士指看南粤,更加郁郁葱葱。
Response.WritestrTemp
2、在代码中加注释
程序中使用注释是一个良好的编程习惯。
可以使用注释来说明编写某段代码或声明某个变量的用途,这样读到注释时就会想起当时的思路,既方便自己,也方便以后可能检查代码的其他人员。
在VBScript,注释符采用西文单引号“’”,即以撇号作为注释的开始。
注释可以和语句在同一行并写在语句的后面,也可单独占一行。
dtmTime=Time()’保存当前时间
‘调用Response的Write方法将当前时间发送到浏览器
Response.Write”当前时间是”&
dtmTime
注意:
在ASP输出命令中不能包含注释。
例如,下面的脚本将无法工作:
〈%=Time()’显示当前时间%>
3、使用不同进制的数字
在VBScript中,除了可以用默认的十进制来表示数字外,还允许用十六进制或八进制来表示数字。
对于不同数制的数,VBScript在表达方式上有明确的规定,即十六进制数要加前缀&
H(如&
H9),八进制数要加前缀&
0(数字零)(如&
011),十进制数不用加任何前缀。
4、数据类型
VBScript只有一种数据类型,即Variant类型。
由于Variant类型是VBScript中唯一的数据类型,因此它也是VBScript中所有函数的返回值的数据类型。
Variant类型可以在不同场合代表不同类型的数据。
例如,Variant类型用于数字时,将作为数字处理;
用于字符串时,将作为字符串处理;
等等。
5、变量
(1)声明变量
声明变量有两种方式,即显示声明和隐式声明。
显示声明要用到Dim语句例如:
〈%DimstrUserName,strServerName,dtmTime%>
以上代码声明了三个变量,即strUserName,strUserName和dtmTime。
隐式声明是指脚本中第一次使用变量时,就自动创建该变量。
〈%dtmToday=Now()%>
当前日期和时间是〈%=dtmToday%>
以上代码中,VBScript用dtmToday自动创建一个变量。
虽然隐式声明很方便,但如果把变量名拼错的话,就会导致难以查找的错误。
如:
当前日期和时间是〈%=dtmToay%>
以上代码看起来好象没有问题,结果应该和前面的代码一样。
但由于ASP输出命令中将dtmToday写错了,因此无法显示出当前的日期和时间。
这是因为当VBScript遇到新的名字时,无法确定到底是隐式声明了一个新变量,还是仅仅把现有变量名写错了,于是只好用新名字再创建一个新变量。
为了避免隐式声明时写错变量名引起的问题,VBScript提供了OptionExplicit语句来强制显式声明。
如果在程序中使用该语句,则所有变量必须先声明,然后才能使用,否则会出错。
OptionExplicit语句必须位于ASP处理命令之后、任何HTML文本或脚本命令之前。
%@LANGUAGE=VBScript%>
%OptionExplicit%>
DimstrUserName
DimlngAccountNumber
6、变量命名约定
每个变量都有一个由程序员给出的名字。
在VBScript中,变量命名必须遵循这样的规则:
(1)名字必须以字母开头;
(2)名字中不能含有句号;
(3)名字不能超过255个字符;
(4)名字不能和关键字同名;
(5)名字在被声明的作用域内必须唯一。
VBScript不区分大小写。
例如,将一个变量命名为myCounter和将其命名为mYCounter是一样的。
另外,给变量命名时,要含义清楚,便于记忆。
7、变量的作用域
变量被声明后不是在任何地方都可以被使用,每个变量都有它的作用域。
作用域是指程序中哪些代码能引用变量。
过程内部声明的变量称为过程级变量或局部变量,这样的变量只有在声明它们的过程中才能使用,即无法在过程外部访问;
过程外部声明的变量称为脚本级变量或全局变量,即在同.asp文件中的任何脚本命令均可访问和修改变量的值。
过程级和脚本级变量可以同名,修改其中一个变量的值,不会影响另一个。
OptionExplicit
DimintX’声明脚本级变量
IntX=1’给脚本级变量赋值
SetLocalVariable’调用过程修改过程级变量的值
Response.WriteintX’将脚本级变量的值发送到浏览器,值仍为1
SubSetLocalVariable
DimintX’声明过程级变量
IntX=2’给过程级变量赋值
EndSub
但是,如果不声明变量,则有可能在无意中修改脚本级变量的值。
例如,在下面的例子中,由于没有在过程中声明变量,因此当过程调用设置变量intX为2时,脚本引擎认为过程要修改的是脚本级变量:
DimintX’声明脚本级变量
SetLocalVariable’调用过程修改变量的值
Response.WriteintX’将脚本级变量的值发送到浏览器,值为2
IntX=2’给脚本级变量赋值
为了避免这样的问题,有必要养成显示声明所有变量的习惯。
这一点当用#include命令在.asp文件中包含其他文件时尤其重要,因为被包含的脚本虽然在单独的文件中,但却当作是包含文件的一部分。
除非声明变量,否则很容易忘记必须在主脚本中使用不同的变量名。
8、常量
常量是具有一定含义的名称,用于代替数值或字符串。
在持续执行期间,常量的值不会发生改变。
可以在代码的任何位置使用常量代替实际值。
VBScript本身定义了许多固有常量,这些常量均以vb为前缀。
此外,在VBScript中,还可以用Const语句来定义自己的常量。
ConstconPi=3.14159265358979‘数字常量
ConstconReleaseDate=#1/1/2000#‘日期常量
ConstconVersion=“08.10.A”'
字符常量
9、数组
在VBScript中,把具有相同名字不同下标值的一组变量称为数组变量,简称数组。
数组中的每个元素都有唯一的下标来识别。
表达时,必须将下标放在一对紧跟在数组名之后的括号中,如intSums(10),其中intSums是数组名,10是下标。
下标用于指明某个数组元素在数组中的位置。
在一个数组中,若用一个下标就能确定一个元素在数组中的位置,则该数组就称一维数组。
由具有两个或多个下标所组成的数组称为二维数组或多维数组。
数组有上界和下界,数组中的元素在上下界内是连续的。
由于VBScript对每个元素都要分配空间,因此不要不切实际地声明太大的数组。
在VBScript中,数组有两种类型,即固定数组和动态数组。
(1)固定数组
固定数组是指数组一旦定义好后,其大小在运行时不可改变的数组。
数组在使用之前必须先声明。
在VBScript中,声明数组的语句和声明变量的语句是一致的。
DimintCounters(9)’声明含10个元素的数组,下标从0到9
DimdblMatrix(9,11)’声明10*12的二维数组
数组声明后,就可以在代码中引用它们。
ForI=0T09
IntCounters(I)=I*3
Next
(2)动态数组
动态数组是运行时大小可变的数组。
在VBScript中,动态数组最灵活、最方便。
声明动态数组时,不要在括号中包含任何数字。
%DimstrDyn()%>
动态数组声明后,使用时必须用ReDim语句分配实际的元素个数。
%DimstrDyn(10)%>
可以用ReDim语句不断地改变元素数目。
DimstrDyn()
ReDimstrDyn(3)’声明含4个元素的数组,下标从0到3
……
ReDimstrDyn(2,5)’声明为二维数组
每次执行ReDim语句时,存储在数组中的当前值都会全部丢失。
VBScript重新将数组元素的值置为空。
如果希望改变数组大小而有不丢失数组中的数据,则要用带Preserve关键字的ReDim语句。
%ReDimPreservestrDyn(Ubound(strDyn)+1)%>
以上代码将数组扩大一个元素,现有元素值不变。
Ubound()函数返回数组的上界。
10、运算
运算用于对数据进行加工处理。
基本的运算关系可以用一些简洁的符号来描述,这些符号称为运算符或操作符,被运算的数据则称为操作数,操作数可以是变量、常量,也可以是函数。
将运算符和操作符连接起来,就构成了表达式。
在VBScript中,可以进行4种类型的运算,即算术运算、连接运算、关系运算和逻辑运算。
(1)算术运算
算术运算就是人们熟悉的数学运算,如:
加(+)、减(-)、乘(*)、除(/)、整除(\)、指数(^)等。
(2)连接运算
连接运算是将两个字符表达式连接起来,生成一个新的字符串。
连接运算符有两个:
+和&
。
strname=”刘晓东”
strschool=”南京大学”
strtemp=strname&
“是”+strschool&
“的学生“
%>
使用&
运算符时,参与连接的连个表达式可以不全是字符串,即&
运算符能强制性地将两个表达式做字符串连接。
intnum=22
strtemp=”学号是”&
intnum
使用+运算符时,操作符必须是字符串,否则将产生错误:
strtemp=”学号是”+intnum
(3)关系运算
关系运算用来比较两个表达式的大小,如大于(>
)、大于等于(>
=)、小于(<
)、小于等于(<
=)、等于(=)和不等于(<
>
)。
关系运算的结果是逻辑值TRUE或FALSE关系运算可用于数值间的比较,也可用于字符串间的比较。
当用于字符串间的比较时,将按ASCII码值的大小由左向右依次逐个字符进行比较,直到比较出结果为止。
(4)逻辑运算
逻辑运算通常称做布尔运算,专门用于逻辑值之间的运算。
运算符
含义
举例
结果
NOT
逻辑非
NOT(8>
2)
False
AND
逻辑与
(8>
2)and(9>
3)
True
OR
逻辑或
3)or(9<
5)
一个为真即为真
XOR
异或
(9>
5)xor(21>
6)
一个且只有一个为真时为真
EQV
逻辑等于
(6-3)eqv(8-5)
相等时为真
IMP
逻辑蕴涵
(9<
6)imp(9>
8)
第一个表达式为真时为真
(5)运算符的优先顺序
算术运算>
连接运算>
关系运算>
逻辑运算
算术运算:
指数>
乘除>
整除>
加减
逻辑运算:
按表中顺序从上到下依次降低
(三)VBScript控制结构
默认时,脚本中代码总是按书写的先后顺序来执行的。
但在实际应用中,通常要根据条件的成立与否来改变代码的执行顺序,这时就要使用控制结构。
控制结构分为判定结构和循环结构两种。
1、判定结构。
判定结构分为条件结构和选择结构两种
(1)条件结构
条件结构分单行结构和块结构。
单行结构的语法是:
ifconditionthen[elsestatement]
其中,condition是条件表达式。
如果condition为true,则执行then后面的语句,否则执行else后面的语句;
如果省略else部分,则执行下一条语句。
%ifdtmx<
now()thendtmx=now()%>
块结构的语法是:
ifcondition1then
[statement1]
[elseifcondition2then
[statement2]]
……
[else
[statementn]]
endif
VBSCRIPT先测试condition1。
如果为false,再测试condition2,依次类推,直到找到一个为true的条件,就执行相应的语句块,然后执行end
If后面的语句。
如果条件都不是true,则执行else语句块。
iftime<
00AM#then
response.write”早上好!
elseiftime<
#6:
00PM#then
response.write”下午好!
else
response.write”晚上好!
(2)选择结构
块结构的条件语句结构比较烦琐,用选择结构替代块结构更加易读。
选择结构的语法是:
selectcasetestexpression
[caseexpressionlist1
[statement1]]
[caseexpressionlist2
[caseelse
endselect
vbscript先计算测试表达式的值,然后将表达式的值与每个case的值进行比较。
若相等,就执行与该case相关的语句块。
如果在一个列表中有多个值,就用逗号把值隔开。
如果不止一个case与测试表达式匹配,那么只对第一个匹配的case执行相关联的语句块。
如果列表中没有一个值与测试值相匹配,则执行caseelse子句中的语句。
selectcasestrseason
case“春季”
response.write”一月、二月、三月”
case“夏季”
response.write”四月、五月、六月”
case“秋季”
response.write”七月、八月、九月”
case“冬季”
response.write”十月、十一月、十二月”
caseelse
response.write”错误”
2、循环结构
循环结构允许重复执行一行或数行代码。
在vbscript中,提供了三种不同风格的循环结构,即Do循环、For循环和ForEach循环。
(1)Do循环
Do循环用于重复执行一个语句块,重复次数不定。
如
I=0
Do
I=I+1
Response.write”I的当前值是:
”&
I&
”<
br>
Loop
显然,以上代码没有设置终止条件,循环会无限地进行下去,为让循环终止必须在循环中用exitdo语句。
〈%
Respo
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 交互式 网页 设计