=========== 添加vbscript代码的三种方法 ============NaJLinux联盟
假设已有一个名为btnSubmit的按钮,添加vbscript代码的方法有三种: NaJLinux联盟
第一种,最常用:
NaJLinux联盟
第二种,使用For/Event属性:
NaJLinux联盟
第三种:可以不必单独为一个事件生成一个事件处理程序,只要把事件处理的过程当作元素标记中的一个属性就可以了。需要注意,事件的处理过程的值应该用单引号括起来,而不像其他的属性值是用双引号括起来的。
NaJLinux联盟
========On Error Resume Next语句=========NaJLinux联盟
若不使用 On Error Resume Next 语句,发生的任何运行时错误都将是致命的,即,显示错误信息并终止运行。NaJLinux联盟
On Error Resume Next 会使程序从紧随产生错误的语句之后的语句继续执行,或是从紧随最近一次调用过程(该过程含有 On Error Resume Next 语句)的语句继续运行。这个语句可以不顾运行时的错误,继续执行程序,之后您可以在过程内部建立错误处理例程。所以,如果希望在例程中进行内部错误处理,则应在每一个调用的例程中执行 On Error Resume Next 语句。
==========VBScript中的错误处理功能============NaJLinux联盟
严格地讲,VBScript中的错误处理功能是比较弱的,当错误发生时,它没有办法直接调用错误处理程序,它发生错误的时候并没有产生中断或提示信息的机制。在Visual Basic中,错误发生的时候可以利用On Error Goto...的语句来进行错误处理,当错误发生时,程序会自动跳转到用Goto后面的标号指示的代码处。可是VBScript中不允许这样使用。NaJLinux联盟
但是利用On Error Resume Next语句,还是可以实现某种程度的错误捕捉功能,只不过所有的错误陷阱要么必须在线处理,要么只能报告程序中出现的最后一个错误。下面给出了VBScript的错误处理基本框架。NaJLinux联盟
Sub MySub()NaJLinux联盟
On Error Resume NextNaJLinux联盟
........NaJLinux联盟
'在线处理NaJLinux联盟
if Err.Number=? thenNaJLinux联盟
........NaJLinux联盟
end ifNaJLinux联盟
'报告脚本遇到的上一个错误的信息NaJLinux联盟
if Err.Number<>0 thenNaJLinux联盟
MsgBox Err.DescriptionNaJLinux联盟
end ifNaJLinux联盟
End SubNaJLinux联盟
注意,当使用On Error Resume Next语句后,除了最后一个错误,前面发生过的错误都已经被清除了,所以无法知道发生过的所有错误。为了能够及时处理,建议采用在线处理方法。
============Err对象的Raise方法==========NaJLinux联盟
Err对象的Raise方法用于引发特定的错误。NaJLinux联盟
可以用下面的程序显示错误的描述
On Error Resume NextNaJLinux联盟
Err.Raise 6 '产生溢出错误。NaJLinux联盟
MsgBox ("Error # " & CStr(Err.Number) & " " & Err.Description)NaJLinux联盟
Err.Clear '清除错误。
========ActiveX==========NaJLinux联盟
ActiveX是使Web页面丰富多彩的好方法,虽然HTML控件提供了基本的可视化操作(如按钮等),但却缺乏那些用户已经熟悉的可视化功能,而通过加入一些通用的(或者自己开发的)ActiveX控件,用户就能获得常见的计算机应用程序的感觉。用标签使用ActiveX控件。id属性指定控件的名字,然后是ActiveX控件的ID号。如果浏览者的客户机上没有该控件,就要用CodeBase指定下载这一控件的源站点位置,如http://www.mysite.com/controls/mycontrol.ocx,除了指明控件的扩展名为.ocx以外,不需要提供别的什么信息。接下来是用标记添加参数。一个典型的程序段如下:
NaJLinux联盟
如果开发者不想让浏览者知道其标记中的参数,该内容会被编码,然后以data属性写入标记,如:
NaJLinux联盟
Linux联盟收集整理 ,转贴请标明原始链接,如有任何疑问欢迎来本站Linux论坛讨论