vbscript输入内容得问候语代码

一个子程序 含有2个参数 参数传递姓名 性别
子程序接受参数显示相应问候语 例如输出“先生欢迎您访问”“女士欢迎您访问”

答的好的有追加~~

VBScript基础教程之十VBScript编码约定
编码约定是帮助您使用 Microsoft Visual Basic Scripting Edition 编写代码的一些建议。编码约定包含以下内容:

·对象、变量和过程的命名约定
·注释约定
·文本格式和缩进指南

使用一致的编码约定的主要原因是使 Script 或 Script 集的结构和编码样式标准化,这样代码易于阅读和理解。使用好的编码约定可以使源代码明白、易读、准确,更加直观且与其他语言约定保持一致。

常数命名约定

VBScript 的早期版本不允许创建用户自定义常数。如果要使用常数,则常数以变量的方式实现,且全部字母大写以和其他变量区分。常数名中的多个单词用下划线 (_) 分隔。例如:

USER_LIST_MAX
NEW_LINE

这种标识常数的方法依旧可行,但您还可以选择其他方案,用 Const 语句创建真正的常数。这个
约定使用大小写混合的格式,并以“con”作为常数名的前缀。例如:

conYourOwnConstant

变量命名约定

出于易读和一致性的目的,请在 VBScript 代码中使用以下变量命名约定:

子类型 前缀 示例
Boolean bln blnFound
Byte byt bytRasterData
Date (Time) dtm dtmStart
Double dbl dblTolerance
Error err errOrderNum
Integer int intQuantity
Long lng lngDistance
Object obj objCurrent
Single sng sngAverage
String str strFirstName

变量作用域

变量应定义在尽量小的作用域中。VBScript 变量的作用域如下所示:

作用域 声明变量处 可见性
过程级 事件、函数或子过程 在声明变量的过程中可见
Script 级 HTML 页面的 HEAD 部分,任何过程之外 在 Script 的所有过程中可见

变量作用域前缀

随着 Script 代码长度的增加,有必要快速区分变量的作用域。在类型前缀前面添加一个单字符前缀可以实现这一点,而不致使变量名过长。

作用域 前缀 示例
过程级 无 dblVelocity
Script 级 s sblnCalcInProgress

描述性变量名和过程名

变量名或过程名的主体应使用大小写混合格式,并且尽量完整地描述其目的。另外,过程名应以动词开始,例如 InitNameArray 或 CloseDialog。

对于经常使用的或较长的名称,推荐使用标准缩写以使名称保持在适当的长度内。通常多于 32 个字符的变量名会变得难以阅读。使用缩写时,应确保在整个 Script 中保持一致。例如,在一个 Script 或 Script 集中随意切换 Cnt 和 Count 将造成混乱。

对象命名约定

下表列出了 VBScript 中可能用到的对象命名约定(推荐):

对象类型 前缀 示例
3D 面板 pnl pnlGroup
动画按钮 ani aniMailBox
复选框 chk chkReadOnly
组合框、下拉列表框 cbo cboEnglish
命令按钮 cmd cmdExit
公共对话框 dlg dlgFileOpen
框架 fra fraLanguage
水平滚动条 hsb hsbVolume
图像 img imgIcon
标签 lbl lblHelpMessage
直线 lin linVertical
列表框 lst lstPolicyCodes
旋钮 spn spnPages
文本框 txt txtLastName
垂直滚动条 vsb vsbRate
滑块 sld sldScale

代码注释约定

所有过程的开始部分都应有描述其功能的简要注释。这些注释并不描述细节信息(如何实现功能),这是因为细节有时要频繁更改。这样就可以避免不必要的注释维护工作以及错误的注释。细节信息由代码本身及必要的内部注释来描述。

当传递给过程的参数的用途不明显,或过程对参数的取值范围有要求时,应加以说明。如果过程改变了函数和变量的返回值(特别是通过参数引用来改变),也应在过程的开始部分描述该返回值。

过程开始部分的注释应包含以下区段标题。相关样例,请参阅后面的“格式化代码”部分。

区段标题 注释内容
目的 过程的功能(不是实现功能的方法)。
假设 其状态影响此过程的外部变量、控件或其他元素的列表。
效果 过程对每个外部变量、控件或其他元素的影响效果的列表。
输入 每个目的不明显的参数的解释。每个参数都应占据单独一行并有其内部注释。
返回 返回值的解释。

请记住以下几点:

·每个重要的变量声明都应有内部注释,描述变量的用途。
·应清楚地命名变量、控件和过程,仅在说明复杂细节时需要内部注释。
·应在 Script 的开始部分包含描述该 Script 的概述,列举对象、过程、运算法则、对话框和其他系统从属物。有时一段描述运算法则的假码是很有用的。

格式化代码

应尽可能多地保留屏空间,但仍允许用代码格式反映逻辑结构和嵌套。以下为几点提示:

·标准嵌套块应缩进 4 个空格。
·过程的概述注释应缩进 1 个空格。
·概述注释后的最高层语句应缩进 4 个空格,每一层嵌套块再缩进 4 个空格。例如:

'*********************************************************
' 目的: 返回指定用户在 UserList 数组中第一次出现的位置。
' 输入: strUserList(): 所查找的用户列表。
' strTargetUser: 要查找的用户名。
' 返回: strTargetUser 在 strUserList 数组中第一次出现时的索引。
' 如果目标用户未找到,返回 -1。
'*********************************************************

Function intFindUser (strUserList(), strTargetUser)
Dim i ' 循环计数器。
Dim blnFound ' 发现目标的标记。
intFindUser = -1
i = 0 ' 初始化循环计数器。
Do While i <= Ubound(strUserList) and Not blnFound
If strUserList(i) = strTargetUser Then
blnFound = True ' 标记设为 True。
intFindUser = i ' 返回值设为循环计数器。
End If
i = i + 1 ' 循环计数器加 1。
Loop
End Function

VBScript基础教程之十一VBScript与窗体
简单验证

使用 Visual Basic Scripting Edition,您可以完成通常要在服务器上进行的大量窗体处理工作,也可以完成不能在服务器上进行的工作。

这是一个简单的客户端验证的样例。HTML 代码的结果是一个文本框和一个按钮。如果使用 Microsoft? Internet Explorer 查看用以下代码制作的页面,您会看到一个旁边带有按钮的小文本框。

<HTML>
<HEAD><TITLE>简单验证</TITLE>
<SCRIPT LANGUAGE="VBScript">
<!--
Sub Submit_OnClick
Dim TheForm
Set TheForm = Document.ValidForm
If IsNumeric(TheForm.Text1.Value) Then
If TheForm.Text1.Value < 1 Or TheForm.Text1.Value > 10 Then
MsgBox "请输入一个 1 到 10 之间的数字。"
Else
MsgBox "谢谢。"
End If
Else
MsgBox "请输入一个数字。"
End If
End Sub
-->
</SCRIPT>
</HEAD>
<BODY>
<H3>简单验证</H3><HR>
<FORM NAME="ValidForm">
请输入一个 1 到 10 之间的数字:
<INPUT NAME="Text1" TYPE="TEXT" SIZE="2">
<INPUT NAME="Submit" TYPE="BUTTON" VALUE="提交">
</FORM>
</BODY>
</HTML>

这个文本框与 VBScript 页面的简单样例中示例的不同之处在于文本框的 Value 属性被用于检查输入值。要使用文本框的 Value 属性,代码必须引用文本框的名称。

每次引用文本框时都应写出全称,即 Document.ValidForm.Text1。但是,当多次引用窗体控件时,可以按照以下步骤操作:首先声明一个变量,然后使用 Set 语句将窗体 Document.ValidForm 赋给变量 TheForm,这样就能使用 TheForm.Text1 引用文本框。常规的赋值语句(例如 Dim)在这里无效,必须使用 Set 来保持对对象的引用。

使用数字

请注意以上示例直接检测输入值是否是一个数字:使用 IsNumeric 函数确定文本框中的字符串是否是一个数字。虽然 VBScript 能够自动转换字符串和数字,但检测用户输入值的数据子类型,并且在必要时使用转换函数始终是一个好的习惯。在用文本框的 Value 属性进行加法运算时,应将它显式地转换为数字,这是因为加号 (+) 操作符不但可进行加法操作,而且可进行字符串连接操作。例如,如果 Text1 中包含“1”,Text2 中包含“2”,您将会看到以下结果:

A = Text1.Value + Text2.Value ' A 为“12”
A = CDbl(Text1.Value) + Text2.Value ' A 为 3

验证后将数据传递回服务器

简单验证样例使用的是普通按钮控件。如果使用 Submit 控件,所有数据都会被立即传送到服务器,示例将不会看到数据来进行检查。避免使用 Submit 控件使您可以检查数据,但不能向服务器提交数据。如果要提交数据则需要再添加一行代码,如下所示:

<SCRIPT LANGUAGE="VBScript">
<!--
Sub Submit_OnClick
Dim TheForm
Set TheForm = Document.ValidForm
If IsNumeric(TheForm.Text1.Value) Then
If TheForm.Text1.Value < 1 Or TheForm.Text1.Value > 10 Then
MsgBox "请输入一个 1 到 10 之间的数字。"
Else
MsgBox "谢谢。"
TheForm.Submit ' 数据输入正确,传递到服务器。
End If
Else
MsgBox "请输入一个数字。"
End If
End Sub
-->
</SCRIPT>

在数据输入正确时,代码调用窗体对象的 Submit 方法,将数据传递到服务器。除非在数据被传递到服务器之前判断其正误,否则服务器将处理数据,而不论其正确与否。您可以在 Internet Explorer Script Object Model 页面上找到关于 Submit 方法和其他方法的全部信息。

到目前为止,您只看到了标准 HTML <FORM> 对象。Internet Explorer 还可以使您利用 ActiveX? 控件(以前称为 OLE 控件)和 Java? 对象的全部功能创建页面。

VBScript基础教程之十二在VBScript中使用对象
使用对象

无论使用的是 ActiveX? 控件(以前称为 OLE 控件)还是 Java? 对象,Microsoft Visual Basic Scripting Edition 和 Microsoft? Internet Explorer 都以相同的方式处理它们。如果您使用的是 Internet Explorer 并且 ActiveX 库中安装了这些控件,就会看到由以下代码制作的页面。

<OBJECT> 标记用来包含对象,<PARAM> 标记用来设置对象属性的初始值。使用 <PARAM> 标记类似于在 Visual Basic 中设置窗体控件的初始属性值。例如,以下代码使用 <OBJECT> 和 <PARAM> 标记将 ActiveX 标签控件添加到页面中:

<OBJECT
classid="clsid:99B42120-6EC7-11CF-A6C7-00AA00A47DD2"
id=lblActiveLbl
width=250
height=250
align=left
hspace=20
vspace=0
>
<PARAM NAME="Angle" VALUE="90">
<PARAM NAME="Alignment" VALUE="4">
<PARAM NAME="BackStyle" VALUE="0">
<PARAM NAME="Caption" VALUE="一个简单标签">
<PARAM NAME="FontName" VALUE="宋体">
<PARAM NAME="FontSize" VALUE="20">
<PARAM NAME="FontBold" VALUE="1">
<PARAM NAME="FrColor" VALUE="0">
</OBJECT>

象对任何窗体控件一样,可以获取属性、设置属性和调用方法。例如,以下代码包含 <FORM> 控件,可用其对标签控件的两个属性进行操作:

<FORM NAME="LabelControls">
<INPUT TYPE="TEXT" NAME="txtNewText" SIZE=25>
<INPUT TYPE="BUTTON" NAME="cmdChangeIt" VALUE="更改文本">
<INPUT TYPE="BUTTON" NAME="cmdRotate" VALUE="旋转标签">
</FORM>

通过定义过的窗体,cmdChangeIt 按钮的事件过程可更改标签文本:

<SCRIPT LANGUAGE="VBScript">
<!--
Sub cmdChangeIt_onClick
Dim TheForm
Set TheForm = Document.LabelControls
lblActiveLbl.Caption = TheForm.txtNewText.Value
End Sub
-->
</SCRIPT>

代码将对控件和值的引用限定在窗体中,这与简单验证示例中的代码类似。

ActiveX 库中有多个 ActiveX? 控件可用于 Internet Explorer。您可以在那里找到关于属性、方法和事件的全部信息,也可以在编程参考页面上找到关于控件类标识符 (CLSID) 的信息。另外还可以在 Internet Explorer 4.0 Author's Guide and HTML Reference 页面上找到有关 <OBJECT> 标记的详细信息。
-----------------------------------------------------------------------

注意 Internet Explorer 的早期版本要求用大括号 ({}) 将 classid 属性括起来,不符合 W3C 规格。在当前版本中使用大括号则会产生“此页使用了过期版本的 <OBJECT> 标记”信息。

最后给大家付一个VBScript页面的简单样例

使用 Microsoft? Internet Explorer 可以查看用以下 HTML 代码制作的页面。如果单击页面上的按钮,可看到 VBScript 的运行结果。

<HTML>
<HEAD><TITLE>一个简单首页</TITLE>
<SCRIPT LANGUAGE="VBScript">
<!--
Sub Button1_OnClick
MsgBox "Mirabile visu."
End Sub
-->
</SCRIPT>
</HEAD>
<BODY>
<H3>一个简单首页</H3><HR>
<FORM><INPUT NAME="Button1" TYPE="BUTTON" VALUE="单击此处"></FORM>
</BODY>
</HTML>

结果虽然有点简单:一个对话框显示一个拉丁短语(意为“看起来非常漂亮”)。然而这段代码实际上作了许多事情。

当 Internet Explorer 读取页面时,找到 <SCRIPT> 标记,识别出 VBScript 代码并保存代码。单击按钮时,Internet Explorer 使按钮与代码连接,并运行该过程。

<SCRIPT> 标记中的 Sub 过程是一个事件过程。过程名包含两部分:一部分为按钮名,即 Button1(从 <INPUT> 标记中的 NAME 属性获取),另一部分为事件名,即 OnClick。两部分由下划线 (_) 连接。单击按钮时,Internet Explorer 查找并运行相应的事件过程,即 Button1_OnClick。

Internet Explorer 在 Internet Explorer Scripting Object Model 文档中定义了可用于窗体控件的事件。

页面也可以使用控件与过程的组合。VBScript 与窗体显示了控件之间的一些简单交互作用。

向事件附加代码的其他方法

上述的方法也许是最简单和最常用的,但也可以使用另外两种方法向事件附加 VBScript 代码。一种方法是在定义控件的标记中添加较短的内部代码。例如在单击按钮时,下面的 <INPUT> 标记执行与前面示例相同的操作:

<INPUT NAME="Button1" TYPE="BUTTON"
VALUE="单击此处" OnClick='MsgBox "Mirabile visu."'>

请注意函数调用包含在单引号中,MsgBox 函数的字符串包含在双引号中。只要用冒号 (:) 分隔语句,就可以使用多条语句。

另一种方法是在 <SCRIPT> 标记中指定特定的控件和事件:

<SCRIPT LANGUAGE="VBScript" EVENT="OnClick" FOR="Button1">
<!--
MsgBox "Mirabile visu."
-->
</SCRIPT>

由于 <SCRIPT> 标记指定了事件和控件,所以不需要再用 Sub 和 End Sub 语句。
VBScript基础教程之十VBScript编码约定
编码约定是帮助您使用 Microsoft Visual Basic Scripting Edition 编写代码的一些建议。编码约定包含以下内容:

·对象、变量和过程的命名约定
·注释约定
·文本格式和缩进指南

使用一致的编码约定的主要原因是使 Script 或 Script 集的结构和编码样式标准化,这样代码易于阅读和理解。使用好的编码约定可以使源代码明白、易读、准确,更加直观且与其他语言约定保持一致。

常数命名约定

VBScript 的早期版本不允许创建用户自定义常数。如果要使用常数,则常数以变量的方式实现,且全部字母大写以和其他变量区分。常数名中的多个单词用下划线 (_) 分隔。例如:

USER_LIST_MAX
NEW_LINE

这种标识常数的方法依旧可行,但您还可以选择其他方案,用 Const 语句创建真正的常数。这个
约定使用大小写混合的格式,并以“con”作为常数名的前缀。例如:

conYourOwnConstant

变量命名约定

出于易读和一致性的目的,请在 VBScript 代码中使用以下变量命名约定:

子类型 前缀 示例
Boolean bln blnFound
Byte byt bytRasterData
Date (Time) dtm dtmStart
Double dbl dblTolerance
Error err errOrderNum
Integer int intQuantity
Long lng lngDistance
Object obj objCurrent
Single sng sngAverage
String str strFirstName

变量作用域

变量应定义在尽量小的作用域中。VBScript 变量的作用域如下所示:

作用域 声明变量处 可见性
过程级 事件、函数或子过程 在声明变量的过程中可见
Script 级 HTML 页面的 HEAD 部分,任何过程之外 在 Script 的所有过程中可见

变量作用域前缀

随着 Script 代码长度的增加,有必要快速区分变量的作用域。在类型前缀前面添加一个单字符前缀可以实现这一点,而不致使变量名过长。

作用域 前缀 示例
过程级 无 dblVelocity
Script 级 s sblnCalcInProgress

描述性变量名和过程名

变量名或过程名的主体应使用大小写混合格式,并且尽量完整地描述其目的。另外,过程名应以动词开始,例如 InitNameArray 或 CloseDialog。

对于经常使用的或较长的名称,推荐使用标准缩写以使名称保持在适当的长度内。通常多于 32 个字符的变量名会变得难以阅读。使用缩写时,应确保在整个 Script 中保持一致。例如,在一个 Script 或 Script 集中随意切换 Cnt 和 Count 将造成混乱。

对象命名约定

下表列出了 VBScript 中可能用到的对象命名约定(推荐):

对象类型 前缀 示例
3D 面板 pnl pnlGroup
动画按钮 ani aniMailBox
复选框 chk chkReadOnly
组合框、下拉列表框 cbo cboEnglish
命令按钮 cmd cmdExit
公共对话框 dlg dlgFileOpen
框架 fra fraLanguage
水平滚动条 hsb hsbVolume
图像 img imgIcon
标签 lbl lblHelpMessage
直线 lin linVertical
列表框 lst lstPolicyCodes
旋钮 spn spnPages
文本框 txt txtLastName
垂直滚动条 vsb vsbRate
滑块 sld sldScale

代码注释约定

所有过程的开始部分都应有描述其功能的简要注释。这些注释并不描述细节信息(如何实现功能),这是因为细节有时要频繁更改。这样就可以避免不必要的注释维护工作以及错误的注释。细节信息由代码本身及必要的内部注释来描述。

当传递给过程的参数的用途不明显,或过程对参数的取值范围有要求时,应加以说明。如果过程改变了函数和变量的返回值(特别是通过参数引用来改变),也应在过程的开始部分描述该返回值。

过程开始部分的注释应包含以下区段标题。相关样例,请参阅后面的“格式化代码”部分。

区段标题 注释内容
目的 过程的功能(不是实现功能的方法)。
假设 其状态影响此过程的外部变量、控件或其他元素的列表。
效果 过程对每个外部变量、控件或其他元素的影响效果的列表。
输入 每个目的不明显的参数的解释。每个参数都应占据单独一行并有其内部注释。
返回 返回值的解释。

请记住以下几点:

·每个重要的变量声明都应有内部注释,描述变量的用途。
·应清楚地命名变量、控件和过程,仅在说明复杂细节时需要内部注释。
·应在 Script 的开始部分包含描述该 Script 的概述,列举对象、过程、运算法则、对话框和其他系统从属物。有时一段描述运算法则的假码是很有用的。

格式化代码

应尽可能多地保留屏空间,但仍允许用代码格式反映逻辑结构和嵌套。以下为几点提示:

·标准嵌套块应缩进 4 个空格。
·过程的概述注释应缩进 1 个空格。
·概述注释后的最高层语句应缩进 4 个空格,每一层嵌套块再缩进 4 个空格。例如:

' 目的: 返回指定用户在 UserList 数组中第一次出现的位置。
' 输入: strUserList(): 所查找的用户列表。
' strTargetUser: 要查找的用户名。
' 返回: strTargetUser 在 strUserList 数组中第一次出现时的索引。
' 如果目标用户未找到,返回 -1。
'

参考资料:http://zhidao.baidu.com/question/109094954.html

温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-09-27
下面是代码,有问题hi我

<input type=button onclick="hello('张三','男');" value="先生">
<input type=button onclick="hello('赵二','女');" value="女士">
<script language="vbscript">
sub hello(name ,sex)
dim msg
if sex="男" then
msg="先生欢迎您访问"
else
msg="女士欢迎您访问"
end if
alert msg
end sub
</script>本回答被提问者采纳
第2个回答  2009-09-27
<script type="text/VBScript">
Sub btn_OnClick()
SayHello pName.value, sex.value
End Sub

Sub SayHello(name, ByVal sex)
If sex = "男" Then
sex = "先生"
Else
sex = "女士"
End If

MsgBox name & sex & ",欢迎您访问!"
End Sub
</script>

name:<input name="pName" onfocus="Me.select" id="pName" type="text" value="" />
sex: <select name="sex" id="sex">
<option value="男">男</option>
<option value="女">女</option>
</select>
<input id="btn" name="btn" value="确定" type="button"/>
第3个回答  2009-09-27
子程序是什么?一个过程?一个函数?一个窗体?

下面是过程的代码
sub HelloSomeone( name as string, gender as string )
if gender="男" then
messagebox( name + "先生欢迎您访问" );
elseif gender="女" then
messagebox( name + "女士欢迎您访问" );
else
messagebox( name + "先生/女士欢迎您访问" );
endif
end sub