ASP动态网页设计实用教程 主讲教师: 开课单位:
第4章 VBScript语言 主要内容 学习目标 新课讲授 本章小结 本章习题 返回
本章主要内容 本章重点介绍服务器端的VBScript脚本语言编程方法,在讲解如何使用VBScript脚本语言的同时,介绍一些常用的VBScript脚本语言的常用函数。 目录页
本章学习目标 认识VBScript脚本语言。 熟练掌握VBScript脚本语言的基本框架。 目录页
第4章 VBScript语言 4.1 VBScript脚本语言概述 4.1.1客户端脚本和服务器端脚本 4.1.3 对象、属性及方法 4.1.4 VBScript变量、数据类型及数组 4.1.5 Vbscript过程和函数的使用 4.1.6 Vbscript的运算符 4.1.7.条件语句 4.1.8.循环语句 4.1.9.事件与事件处理过程 4.1.10.VBScript常用函数 4.2 小结 目录页
第4章VBScript语言 4.1 VBScript脚本语言概述 VBScript是一种脚本语言。所谓的脚本语言就是介于HTML和Java、VB等编程语言之间的脚本命令。HTML用于格式化和链接文本,而编程语言用于向计算机发出一系列复杂的指令。脚本语言在功能上与编程语言接近,而在语法上和规则上比编程语言简单。当然,同其他语言一样脚本程序的编写也遵循一定的规则,若使用脚本语言,则服务器上必须有能解释这种脚本语言的脚本解释器。
4.1.1客户端脚本和服务器端脚本 1. 客户端脚本 客户端脚本用来编写可以由浏览器解释执行的程序。当以客户端编程语言编制的程序被下载到一个兼容的浏览器时,浏览器将自动执行该程序。 2. 服务器端脚本 VBScript也可以作为服务器端脚本。服务器端编程语言用来编写在服务器上执行的程序。服务器为一个站点提供文件,而浏览器接收这些文件。服务器端编程语言编写的程序执行站点主机上的所有操作,所有的功能用户自己实现。
4.1.2.VBScript脚本的基本框架 1. VBScript开始与结束语句标记 在HTML文件中,使用<Script>标记引用VBScript代码。以<Script>为开始标记,以</Script>为结束标记。<Script>……</Script>标记可以出现在HTML页面的任何地方(<body>或<head>部分之中) 2. 注释标记 注释在程序设计中是相当重要的一部分,其目的在于说明程序,给自己或他人在阅读程序时提供帮助,使程序更容易理解,也就是增强程序代码的可读性。 程序实现代码注释一般分为两种风格:块注释与行注释。
4.1.3 对象、属性及方法 1. Window对象、属性及方法
4.1.3 对象、属性及方法
4.1.3 对象、属性及方法
2. Document对象、属性及方法
2. Document对象、属性及方法
3. Event对象、属性及方法
4.1.4 VBScript变量、数据类型及数组 1. VBScript变量 (1)声明变量 在使用一个变量之前,首先要声明这个变量。VBScript 里,使用 Dim, Public, Private 来声明变量。 如:Dim a 可以同时声明多个变量,使用逗号分隔变量。如:Dim a, b, c, d (2)给变量赋值 给变量赋值的表达式为:变量在表达式左边,要赋的值在表达式右边。如:b = 30。
2. VBScript变量命名规则 第一个字符必须是字母。 不能包含句号(.)字符。 长度不能超过 255 个字符。 在被声明的作用域内必须唯一。 3. 数组变量 一般只需为声明的变量赋一个值。只包含一个值的变量被称为标量变量 (Scalar Variables)。但将多个相关值赋给同一个变量会使程序更加简便,因此可以创建一个包含一系列值的变量,称为数组变量 (Array Variables)。
数据类型 Empty 未初始化的variant.对于数值变量,值为0,对于字符串变量,值为零长度字符串(“”) Null 不包含任何有效数据的variant Boolen 包含true或false Byte 包含0到255之间的整数 Integer 包含-32768到32768之间的整数 Currency 用于货币型 Long Single 包含单精度浮点数 Double 包含双精度浮点数 Date(time) 包含表示日期的数字,日期范围从公元100 年1月1日到公元9999年12月31日 String 包含变长字符串,最大长度可为20亿个字符 Object 包含对象 Error 包含错误号
4.1.5 Vbscript过程和函数的使用 1. Sub 过程 (1)定义sub过程 Sub 过程是包含在 Sub 和 End Sub 语句之间的一组 VBScript 语句,执行操作但不返回值。Sub 过程可以使用参数(由调用过程传递的常数、变量或表达式)。如果 Sub 过程无任何参数,则 Sub 语句必须包含空括号()。 (2)定义格式: Sub Sub_nam(parameter1,parameter2,...) Statement End Sub 参数: Sub_nam 为过程名 parameter 为要给过程传递的参数 statement 为过程体,即在调用过程时要执行的一些语句
2. 定义function过程 定义格式: function func_nam(parameter1,parameter2,...) statement func_nam=variables End Function 参数: func_nam 为过程名 parameter 为要给过程传递的参数 statement 为过程体即在调用过程时要执行的一些语句 variables 为要给函数名赋的值
3. 调用过程 调用同一文件中定义的过程: call my_sub(a,b):使用call语句调用sub子程序。 sum=my_func(a,b):直接引用函数名进行调用。如例4-11所示。
4.1.6 Vbscript的运算符 1. 算术运算符
2.比较运算符
3.连接运算符 4.逻辑运算符
5. 运算符的优先级
4.1.7.条件语句 1. 使用 If...Then...Else 条件语句进行判断 当 If 条件为 True 时,即当符合 If 条件时,执行 If 至 End If 之间的脚本。 1)结构形式: if 条件语句 then 语句段 end if 2) if 条件语句 then 语句段1 else 语句段2
If 条件语句1 then 语句段1 elseif 条件语句2 then 语句段2 …… else 语句段n+1 end if 2. 使用 Select Case 条件语句进行判断 Select Case 结构提供了 If...Then...ElseIf 结构的一个变通形式,可以从多个语句块中选择执行其中的一个。Select Case 语句提供的功能与 If...Then...ElseIf 语句类似,但是可以使代码更加简练易读。
语法格式: Select case 表达式 Case 结果1 语句段1 Case 结果2 语句段2 …… Case 结果n 语句段n Case else 语句段n+1 End select
4.1.8.循环语句 1. do...loop循环 语法格式: do 循环体 loop 功能:将do…loop之间的语句循环执行,直到遇到exit do语句时跳出循环体并结束循环。 2. Do While...Loop循环。 do while…loop循环可以多次(次数不定)运行循环体。当循环条件为“真”时,重复执行语句块。 do while 条件
4.1.8.循环语句 3. Do Until...Loop循环 语法格式: do until 条件 循环体 loop 功能:每当进行循环以前都要判断条件,条件为假时,执行循环体中的命令,条件为真时跳出循环体。当步长为1时,可省略不写。 4. For...Next循环结构 for 变量=初值 to 终值 step 步长表达式的值 循环体命令 next 功能:本循环按照初值、终值及步长指定的值,完成指定次数的循环。
4.1.9.事件与事件处理过程 1. 事件
2. 事件处理过程 事件处理的过程一般有以下几种方式: 当表单对象被鼠标单击时,产生Click事件,OnClick()事件处理过程开始启动执行。 表单内的选择对象或者文本对象不再被聚焦时,产生Blur事件,OnBlur()事件处理过程开始启动执行。 相应的对象被改变时,产生Change事件,OnChange()事件处理过程开始执行。 对象被聚焦时,例如当鼠标移动到对象上时即产生了Focus事件,OnFocus()事件处理过程开始启动并执行。
4.1.10.VBScript常用函数 1. 数学运算函数
2. 字符串函数 (1)Asc函数:返回字符串中第一个字母对应的ANSI字符代码。使用方法:Asc(string)。其中string参数表示字符串。 (2)Chr函数:返回指定了ANSI 字符代码对应的字符。使用方法:chr(chrcode)。参数chrcode是相关的标识数字。该函数的功能和Asc函数形成对应。 比如:Asc("a")表示小写字母“a”的ANSI 字符“97”。 (3)Len函数:返回字符串内字符的数目(字节数)。使用方法:len(string)。比如len("love")的值就是4。 (4)LCase函数:返回所有字符串的小写形式。使用方法:lcase(string)。比如lcase("CNBruce")返回为“cnbruce”。 (5)UCase函数:返回所有字符串的大写形式。与LCase函数形成对应。同样,UCase("CNBruce")返回为“CNBRUCE”。
3. 日期和时间函数 (1) Now函数:根据计算机系统设定的日期和时间,返回当前的日期和时间值。使用方法:now(); (2) Date函数:只返回当前计算机系统设定的日期值。使用方法:date(); (3) Time函数:只返回当前计算机系统设定的时间值。使用方法:time(); (4) Year函数:返回一个代表某年的整数。使用方法:year(date),其中date参数是任意的可以代表日期的参数,比如“year(date())”就表示是从“date()”得出的日期中提取其中“年”的整数。
4. 数据类型转换函数 ⑴ Cint(str):把表达式转换为整数。 当str为小数时,Cint函数采用四舍五入的方式转换为整数。 当小数部分正好等于 0.5 时, CInt函数总是将其四舍五入成最接近该数的偶数。 ⑵ Cstr(str):把表达式转换为字符串。 ⑶ Cbool(num):把表达式转换为布尔值。 num不为零时输出True;反之 False。 ⑷ Cdate(str):转换为日期格式。 当str为 0时输出0:00:000#;str为正数时输出距离1899/12/31天数的日期;str为浮点数时输出“日期+小数时间”。 ⑸ Cbyte(num):num<255 转换为字节。 ⑹ Csng(str):转换为单精度数值。 ⑺ Cdbl(str):转换为双精度数值。 ⑻ Ccur(str):转换为现金。
输入/输出函数 1、msgbox函数 语法格式: msgbox(prompt[,button][,title]) Prompt 显示在窗口中的文字 Button 可选项,用于指定窗口的外观和按钮的类型 Title 可选项,显示在窗口标题中的文字
2、inputbox函数 语法格式: String=inputbox(prompt[,title][,default] String 文本框中的文字内容,即用户输入的内容 Prompt 显示在窗口中的文字 Title 可选项,显示在窗口标题中的文字 Default 可选项,用于指定窗口中文本输入框内的默认字符串。
4.2 小结 本章主要介绍了VBScript,利用它不但可以编写服务器端脚本,也可以编写客户端脚本。它是asp程序设计的默认脚本语言,因此也是asp编程设计的基础。从VBScript的特点出发,通过示例对VBScript脚本语言中数据类型、运算符、过程和函数等内容的介绍,较为详尽的描述VBScript脚本语言的环境和语法特点。
第4章 VBScript语言 The End!