易截截图软件、单文件、免安装、纯绿色、仅160KB

ASP函数指针试探-GetRef

  近日在学习C++,看到函数指针,由于之前一直搞ASP,所以想ASP里面是否也有这个函数指针的东西,百度了一下,没有太多关于此方面的介绍,于是翻了翻VBScript手册,没让我失望,找到了GetRef这个函数,引用手册上的说明:
GetRef 函数
返回一个指向一过程的引用,此过程可绑定某事件。
Set object.eventname = GetRef(procname)
参数
object
必选项。事件所关联的对象的名称。
eventname
必选项。要与函数绑定的事件的名称。
procname
必选项。该字符串中包含 Sub 或 Function 过程的名称,该过程与事件关联。
说明
GetRef 函数可以用来将 VBScript 过程 (Function 或 Sub) 与 DHTML (动态 HTML)页面中可用的任何事件联系在一起。DHTML 对象模型为不同对象提供了与各种可用事件有关的信息。
在其他脚本和程序设计语言中,GetRef 所提供的功能被称为函数指针,即它指向了在指定事件发生时要执行的过程的地址。
下面的例子说明了 GetRef 函数的使用:
<SCRIPT LANGUAGE="VBScript">
Function GetRefTest()
  Dim Splash
  Splash = "GetRefTest Version 1.0"  & vbCrLf
  Splash = Splash & Chr(169) & " YourCompany 1999 "
  MsgBox Splash
End Function
Set Window.Onload = GetRef("GetRefTest")
</SCRIPT>
大概意思是为绑定事件所用,因为本人对ASP中事件了解不多,所以在这里对GetRef和事件的关系也不做过多的讨论。这里只研究下WEB开发应用中GetRef的用处。
在PHP里面,PHP不支持指针,因此无法使用函数指针这一技术。PHP支持所谓的“函数变量”,可以把函数赋予某个变量,其作用类似于函数指针。
简单点的例子:
PHP里面可以这么做
<?php
$funcname = "cutstr";
echo $funcname();
function cutstr() {
 return "function";
}
?>
有了GetRef,类似上面的功能ASP也可以实现:
<%
dim funcname
funcname = "cutstr"
response.Write(getref(funcname))
function cutstr()
 cutstr = "function"
end function
%>
实际应用:
在做后台管理的项目时,比如新闻添加,删除,修改,等操作在同一个页面处理,一般我们会在form里面插入一个隐藏域action,或者url参数action,根据action的值来判断操作哪一步。通常这么写:
select case request.querystring("action")
 case "add" : '要操作的代码段....
 


相关文档:

asp资料

概述
  ASP是Active Server Page的缩写,意为“动态服务器页面”。ASP是微软公司开发的代替CGI脚本程序的一种应用,它可以与数据库和其它程序进行交互,是一种简单、方便的编程工具。ASP的网页文件的格式是.asp,现在常用于各种动态网站中。 ASP是一种服务器端脚本编写环境,可以用来创建和运行动态网页或Web应 ......

通过项目学web开发:HTML and ASP 第1天


前言:
不少人都推崇学习编程最佳方式是在实际项目中磨练,通过解决项目中的一个个实际问题将相关的知识点学以致用。作为刚刚迈上编程/web开发自学之路的新手,我便打算将该学习方式加以实践,并通过博客平台记录自己的学习点滴。
我的第一个实践项目便是留言板,之所以选择ASP+Access是因为简单易用,如果一切顺利待上 ......

用J2ME与ASP建立数据库连接

 J2ME是利用HttpConnection建立HTTP连接,然后获取数据,ASP也是利用HTTP协议
,因而可以利用J2ME与ASP建立连接,从而访问数据库。
  ASP是MicroSoft公司的服务器
端动态页面技术,可以根据请求运行服务器
端程序然后返回结果,这也给MIDP提供很多有用的功能。由于MIDP客户端处理能力不强,因此可以把一些处理任务放 ......

Windows2003的IIS调试ASP程序的错误解决方案

由于工作原因,笔者经常需要使用Asp开发一些小型程序,在Windows 2000下开发和使用相关程序时一般不会出现什么问题,并且也很容易解决。但是由于笔者为了尝鲜使用了Windows 2003 Server时,开发相关程序就出现了这样那样的问题,比如浏览器不能显示详细出错信息,连接Access时总是报错等,让笔者苦不堪言。在多次实践和查看 ......

[ASP中使用三层架构] 5.Error处理类

    看到有朋友说前面一章讲得没必要,想想也确实.本来是没有打算讲这些基础的,只是行文起来没有约束,就荡开到基础知识上面了.
    从这节开始,将会给大家介绍ASP中的三大通用类,它贯穿于我所设计的三层架构中,是对ASP语法的扩展,可以提高很多细节处理上的效率,可以算是一点点框架的味道.
& ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号