交互式网页设计文档格式.docx

上传人:b****5 文档编号:20048854 上传时间:2023-01-16 格式:DOCX 页数:54 大小:352.01KB
下载 相关 举报
交互式网页设计文档格式.docx_第1页
第1页 / 共54页
交互式网页设计文档格式.docx_第2页
第2页 / 共54页
交互式网页设计文档格式.docx_第3页
第3页 / 共54页
交互式网页设计文档格式.docx_第4页
第4页 / 共54页
交互式网页设计文档格式.docx_第5页
第5页 / 共54页
点击查看更多>>
下载资源
资源描述

交互式网页设计文档格式.docx

《交互式网页设计文档格式.docx》由会员分享,可在线阅读,更多相关《交互式网页设计文档格式.docx(54页珍藏版)》请在冰豆网上搜索。

交互式网页设计文档格式.docx

”,而晚上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

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 外语学习 > 其它语言学习

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1