




已阅读5页,还剩40页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第4章VBScript脚本语言简介,4.1脚本语言概述,4.2利用VBScript脚本语言编写客户端脚本,4.1脚本语言概述4.1.1什么是脚本语言、脚本语言的的功能脚本语言是一段自己不能独立运行,必须要嵌入到HTML语言中才能运行的代码。为了完善和增加网页的功能,经常需要在网页文档中添加一些脚本代码,以增强网页的功能。其中目前比较流行的脚本语言是VBScript和JScript。要想运行脚本语言,必须要在WEB服务器上安装支持该种脚本语言的脚本引擎。,4.1.2客户端脚本和服务器端脚本一、客户端脚本脚本程序可以在客户端直接被浏览器解释执行,客户端脚本直接嵌入到HTML文档中的,浏览器可以理解其中的语句,并能在网页下载后对这些语句进行解析执行。二、服务器端脚本脚本代码是在Web服务器上执行的,生成发送到浏览器的HTML页面由Web服务器负责。服务器端脚本由于是在Web服务器上运行的,而送回到用户浏览器上的已经是生成的HTML代码。,4.1.3在网页中两种添加脚本的方式一、嵌入式脚本当网页的页面被浏览时就开始执行这些脚本代码。定义格式应用示例:显示系统时间和日期可以加入到网页的BODY标记中的任何地方。二、事件脚本通过用户的某种操作,触发事件发生,运行响应的脚本程序。定义格式应用示例:单击命令按钮在标题栏和状态栏显示系统时间和日期一般加入到网页的HEAD标记中,定义成函数或过程。,4.1.4如何在客户端脚本代码中输出信息使用MsgBox函数或Document.write(表达式)语句均可以实现向浏览器输出信息。用Document.write(表达式)输出信息时,可以用Document.write(“”)方式实现换行效果。用MsgBox函数输出信息时,利用chr(13)函数实现换行效果,4.1.5如何在客户端获取表单提交的数据一、文本框、密码框、多行文本框格式如下:document.表单名称.表单元素名称.value其中:表单元素名称是在定义控件时为NAME属性所赋的值。例如,在表单F1中有如下格式的标记指令:则获取用户输入的密码的方法为:document.f1.pwd.value,二、单选按钮用户所定义的单选按钮被存贮在一个数组中,其中单选按钮控件的length属性表示数组中元素个数。若其中某项被选中,则该数组元素对象的checked属性是逻辑真值,否则是假值。通过该数组元素对象的value属性获取选中项的值。格式如下:fori=0todocument.表单名.单选按钮控件名.length-1ifdocument.表单名.单选按钮控件名(i).checkedthendocument.表单名.单选按钮控件名(i).valueendifnext,三、复选框该表单元素的检查过程和单选按钮相似,含义同上。格式如下:fori=0todocument.表单名.复选框控件名.length-1ifdocument.表单名.复选框控件名(i).checkedthendocument.表单名.复选框控件名(i).valueendifnext,四、下拉列表框如果下拉列表框中允许选择多项值,获取选中各项值的方法如下:n=document.表单名.下拉列表框名.options.lengthfori=0TOn-1ifdocument.表单名.列表框名.options(i).selectedthendocument.表单名.下拉列表框名.options(i).textendifnext,如果下拉列表框中只能选择单项值,获取选中值的方法如下:获取选中项之间的提示文本的方式Document.表单名称.下拉列表框名(document.表单名称.下拉列表框名.selectedindex).text获取选中项中值的方式document.表单名称.下拉列表框名(document.表单名称.下拉列表框名.selectedindex).value在客户端从表单中获取数据的综合演示示例:Sample4_5.htm,4.2VBScript脚本语言概述VBScript是一种脚本语言,它可以自由地嵌入到任何支持该语言的应用程序中。VBScript作为一种主要的脚本语言,它具有简单易学、使用灵活、标准规则开放、与ActiveX控件紧密结合、功能十分强大等特点。VBScript可以和HTML页面完美地结合在一起,运用VBScript可以控制HTML页面,并对页面中某些事件作出响应。例如,可以在页面的表单提交时进行数据的有效性验证。,4.2.1VBScript中的数据类型一、关于VBScript的数据类型Variant是VBScript中唯一的数据类型,所以它也是VBScript中所有函数的返回值的数据类型。例如,Variant用于数字上下文中时作为数字处理,用于字符串上下文中时作为字符串处理。这就是说,如果使用看起来象是数字的数据,则VBScript会假定其为数字并以适用于数字的方式处理。与此类似,如果使用的数据只可能是字符串,则VBScript将按字符串处理。,二、Variant子类型,4.2.2变量一、变量的定义变量有两种定义方式,一种是必须先声明再使用,另一种是不声明直接使用,其中前者是显式声明方式,后者是隐式声明方式。1、显式声明变量可以使用Dim语句在脚本中显式声明变量。例如:DimCOUNT声明多个变量时,使用逗号分隔变量。例如:DimTop,Bottom,Left,Right,2、隐式声明方式声明变量可以对变量不加声明而直接使用,这通常不是一个好习惯,因为这样有时会由于变量名被拼错而导致在运行脚本时出现意外的结果。为了避免由于隐式声明变量可能造成变量书写错误而检查不出来的弊病,VBScript提供了OptionExplicit语句来强制进行变量的显式声明。当使用了OptionExplicit语句后,必须使用Dim或ReDim语句显式声明所有变量。如果试图使用未经声明的变量名,则会出现错误。,二、变量的命名规则在VBScript中,变量命名必须遵循标准的命名规则。这些命名规则是:第一个字符必须是字母。变量名中不能包含有句点。长度不能超过255个字符。在被声明的作用域内必须唯一。变量名不能和关键字同名。在VBScript中,变量名是不区分大小写,另外在给变量名命名时,要含义清楚,便于记忆。,三、变量的作用域每个变量都有它的作用域。变量的作用域由声明它的位置决定。在过程内声明的变量,只有该过程中的代码可以访问或更改变量值,此时变量被称为过程级变量或局部变量;在过程之外声明的变量,可以被该脚本中所有过程所识别,称为脚本级变量或全局变量。四、给变量赋值赋值语句的格式为:Set变量名=表达式一般可以不写Set,当要指定一个对象给已声明成对象的变量时,Set关键字是必备的。,4.2.3VBScript常量常量是在程序执行期间其值不会发生变化的数据。在Vbscript中,常量分为普通常量和符号常量。普通常量不需要定义可以直接使用,而符号常量要使用CONST语句加以声明后才能使用。使用常量可以使脚本程序更具可读性,且易于修改。在脚本程序运行时,常量不会象变量那样无意中被改变。,一、普通常量的使用普通常量分为字符串常量、数值常量和日期常量。字符串常量简称为字符串,它是由一对双引号括起来的字符序列组成。日期常量用一对“#”括起来。如#1/12/2003#二、符号常量的使用使用Const语句在VBScript中创建用户自定义的符号常量。使用Const语句可以创建名称具有一定含义的符号常量,并给它们赋值。定义的格式为:Const符号常量名称=常量表达式。,4.2.4数组一、数组的概念及基本特性把具有相同名字不同下标值的一组变量称为数组变量,简称为数组。数组是连续存贮的并具有相同数据类型的元素所成的集合,数组中的每一元素都可以用唯一的下标来识别。数组具有如下的特性:在数组中所有元素的类型都是相同的。可以使用Dim语句来声明,声明数组变量时变量名后面带有括号()。数组在使用之前应该声明数据元素的类型、数组大小、数组的作用范围。若组的大小在声明时被指定,则它是固定数组,这种数组在运行时是不能改变数组元素的个数。若程序运行时数组的大小可以被改变,则它是个动态数组。数组元素的下标是从0开始的。,二、固定数组声明一维数组的语句格式:Dim数组变量名(下标上界)例:DimA(10)由于在VBScript中所有数组都是基于0的,所以这个数组实际上包含11个元素。在数组中通过使用下标来使用数组中的每个元素值。将数据赋给数组的元素,如下所示:A(0)=256A(1)=324声明二维数数组的语句格式:Dim数组变量名(M,N)在二维数组中,括号中第一个数字表示行的数目,第二个数字表示列的数目。,三、动态数组声明动态数组,括号中不要包含任何数字。例如:DimMyArray()ReDimAnotherArray()要使用动态数组,必须随后使用ReDim确定维数和每一维的大小,同时使用Preserve关键字在重新调整大小时保留以前在数组中已经保存的内容。ReDimMyArray(25)ReDimPreserveMyArray(30)重新调整动态数组大小的次数是没有任何限制的。,4.2.5VBScript的表达式及运算符一、算术运算VBScript提供了以下算术运算符:求幂运算符():result=numberexponent乘法运算符(*):result=number1*number2除法运算符(/):result=number1/number2整除运算符():result=number1number2求余运算符(Mod):result=number1Modnumber2加法运算符():result=number1+number2减法运算符():result=number1-number2)负数运算符():-number(负号),二、连接运算连接运算就是将两个字符表达式连接起来,形成一个新的字符串。使用的运算符有“+”和“&”,其中“+”号运算符只能连接两个字符串,例如:XM=“江卫”DW=“鑫隆造船厂”RESULT=“用户名称:”+XM+“”+“工作单位:”+DW通过&运算符能强制性地将两个表达式按字符串方式连接。例如:Bookcount=230Temp=“销售数量:”&Bookcount,三、关系运算符比较运算符用于比较表达式,包括:(大于)=(大于或等于)=(等于)(不等于)比较表达式的规则或结果:若两个表达式都是数值,则执行数值比较;若两个表达式都是字符串,则执行字符串比较;若一个表达式是数值而另一个是字符串,则数值表达式小于字符串表达式;若一个表达式是数值而另一个是字符串,则数值表达式小于字符串表达式;,四、逻辑运算符逻辑运算符可以把布尔类型的表达式组合起来,完成逻辑运算操作,然后返回其结果:True或False。Not运算符:对表达式执行逻辑非运算,语法格式如下:result=NotexpressionAnd运算符:对两个表达式进行逻辑“与”运算,语法格式如下:result=expression1Andexpression2Or运算符:对两个表达式进行逻辑“或”运算,语法格式如下:result=expression1Orexpression2,五、运算符的优先级当表达式包含多个运算符时,将按规定的顺序计算每一部分,这个顺序被称为运算符优先级。可以使用括号来改变这种优先级顺序,强制首先计算表达式的某些部分。运算时,总是先执行括号中的运算符,然后再执行括号外的运算符。当表达式包含多种运算符时,首先计算算术运算符,然后计算比较运算符,最后计算逻辑运算符。,4.2.6控制结构一、选择结构语句1、单行条件语句的语法结构为:If条件表达式Then语句1Else语句2程序的执行顺序是:先判断条件表达式是真值还是假值,若是真则执行语句1,若是假则执行语句2。如果省略了Else部分,则执行下一语句。,2、块结构条件语句如果条件满足时要执行的语句多于一个时,必须使用块结构的条件语句结构。而此语法包含EndIf语句,这种IF结构语句叫块结构条件语句。块结构条件结构的语法结构为:If条件表达式Then语句组一Else语句组二EndIf,3、条件嵌套语句块结构条件语句还可以在If.Then.Else语句中加上ElseIf语句来测试第二个或更多的条件表达式而成为条件嵌套结构。条件嵌套的语法结构为:If条件表达式1then语句1elseif条件表达式2then语句2elseif条件表达式3语句3else语句nEndif,4、多值选择结构可以使用SELECTCASE选择结构来代替块结构条件语句,以便在多个语句块中有选择地执行其中的一个。语法结构如下:SelectCase表达式Case表达式值列表1语句1Case表达式值列表2语句2ElseCase语句nEndSelectSELECTCASE语句的应用参见例Sample4_6.htm,二、循环结构语句循环结构允许重复执行一组程序代码,直到满足循环结束条件后才停止。1、DOWHILELOOP循环结构语法结构DOWHILE条件表达式循环语句块LOOP执行过程为:执行时先测试表达式的值,如果为假,就跳过所有循环语句块,只要表达式为真,循环就重复执行,直至表达式为假时结束循环。,2、DOLOOPUNTIL结构的语法结构DO循环语句块LOOPUNTIL条件表达式此种结构的执行过程是:先执行循环语句块,然后测试表达式的值,直到表达式条件为真是结束循环语句。如果表达式为假,执行循环语句块,只要表达式为真时结束循环。,3、FORNEXT循环结构的语法结构为FOR循环控制变量=循环初值表达式to循环终值表达式STEP步长循环语句NEXT默认情况下,步长为1。FOR语句的执行过程为:先将循环初值表达式的值赋给循环控制变量,检查此值是否大于循环终值表达式的值。若是则退出循环(若步长为负值,要测试此值是否小于循环终值表达式的值),否则执行循环语句块。当执行完循环语句块之后中,要修改循环控制变量的值,然后继续用循环控制变量的值和循环终值表达式的值去比较。,4、使用ForEach.Next语句ForEach.Next循环是通过数组中的每个元素或对象集合中的每一项的个数来重复循环语句块。这在不知道集合中元素的数目时非常有用。语法格式如下:ForEachelementInGroupStatementsNext其中,element代表元素的变量名,Group是对象集合或数组的名称,Statements执行的语句组。,4.2.7VBScript语句中的过程一、子程序子程序没有返回值,它主要用来完成某种操作,其语法结构为:Sub过程名(参数表)语句EndSub二、函数函数也是用来完成特定功能的独立程序代码,但函数有返回值。函数的定义语法为:Function函数名(参数表)语句函数名=表达式语句EndFunction,4.2.8在代码中加入注释在程序中加入注释可以为读代码的人解释过程或代码的特别含义,这是程序设计中一个非常好的习惯。被注释的语句,在运行过程时不能被执行。在VBScript中,注释是以西文单撇号作为注释的开始。注释语句可以加在程序的任何地方,可以和语句在同一行并写在语句尾部,也可以单独占一行。,4.2.9VBScript的内置函数在VBScript中除了可以使用自己定义的函数外,了解并学会使用它们对于我们设计好的程序是非常重要的,具体函数的功能及使用格式参见教材。,4.2.10使用事件进行编程一、对象编程的有关基础知识1、对象的概念在VBScript中进行程序设计时,界面中的所有事物都可以称为对象。每一个对象有自己的属性、方法和事件,用户就是通过属性、方法和事件来处理对象的。2、对象的属性在VBScript中,用来描述对象特征状的数据就是属性。在VBScript中,很多对象都有自己的属性。改变对象的属性值,可以改变对象的行为外观。,3、对象的方法方法是指对象固有的、可以完成某种任务的功能。方法通过一段代码完成对对象的某种操作,方法是固定属于某一个对象的,方法是由对象自动调用的。要调用一个对象的方法,必须要指定这个对象的名称,然后说明该对象下的方法名,具体实现的格式是:对象名方法名称window.alert(“hello”)document.write(“ERROR!”)4、对象的事件事件就是对对象可以实施的操作,在大多数情况下,事件是通过一些交互式动作来触发的。,二、使用事件编制客户端应用程序1、如何使用事件直接使用事件驱动程序的名称在这种情况下,必须使用“对象名_on事件名”的格式来组织事件驱动程序的代码。其中对象名就是响应该事件的对象名称,如Button_onclick中的Button。但这种方法很少使用,因为它的可读性较差,而且容易出错。通过对象的属
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 永辉超市采购管理办法
- 汽车使用管理办法总结
- 河道管理办法公务文书
- 洞头休闲船舶管理办法
- 济南高校闭关管理办法
- 浙江应急储备管理办法
- 海阳市电瓶车管理办法
- 2023-2028年中国新闻类APP行业市场全景评估及投资战略研究报告
- 影视公司观众满意度调查办法
- 中国安普接插件行业市场发展前景及发展趋势与投资战略研究报告(2024-2030)
- 直播电商结算管理制度
- 吊篮作业考试题及答案
- 儿童腺病毒肺炎课件
- 芜湖凤鸣控股集团(筹)2024年招聘工作人员笔试考点考试题库与答案
- 2025春季学期国开电大本科《经济学(本)》一平台在线形考(形考任务1至6)试题及答案
- 2024年空中乘务专业人才培养方案调研报告
- CJ/T 30-2013热电式燃具熄火保护装置
- 2025贵州省水利投资(集团)有限责任公司招聘84人笔试备考题库附答案详解(巩固)
- 执业药师资格考试《中药学专业知识二》真题及答案(2025年新版)
- 调岗协议书合同补充
- 2025香河事业单位笔试真题
评论
0/150
提交评论