使用可扩展标志语言(XML)编写的脚本和组件和.XML被用来定义对象,方法,属性等等。
同时脚本还提供函数。脚本语言可以是javascript, vbscript等等。运用在网站的运用程序和网站的普通例子,现在都可以被转换成scriptlets. 只要使用scriptlets 来写组件,他们可以再被从新使用在网站或则运用程序各部分,既可以使用在服务端(例如ASP代码)也能够被使用在客户端(例如浏览器)。
这里将集中讨论服务端的用来组件ASP代码的Scriptlets。
早些时候,ASP开发者习惯写include文件。用来做公共的服务端例行程序,
还用在他们的网站运用程序中。从功能上说,include文件被局限在仅仅是在页面中引用。
完成传递参数的功能。
现在同样的公共例行程序能够中添加了scriptlet方法和并且有助与在运用程序中使用组件。
这个方法现在非常普遍的运用在网站运用程序中,能够被运行在同一个服务器上的运用程序重用。
这个方法使得从数据库中获取(pull-down)数据将变得非常通俗化。
例子:建立scriptlet方法和属性,使得很通俗的从数据库中获取数据。
并且使得运行在同一个服务器上所有的运用程序使用这个同样的scriptlet,而不用重新写代码了。
代码如下:
scriptlet文件名为scp_query2list.sct
<?XML version="1.0"?>
<scriptlet>
<registration
description="scp_query2list"
progid="scpquery2list.Scriptlet"
version="1.00"
classid="{e32d2a70-4e11-11d3-a9f0-0080c8034244}"
>
</registration>
<public>
<method name="query2list">
<PARAMETER name="objConn"/>
<PARAMETER name="query"/>
</method>
</public>
<implements type="ASP" id="ASP"/>
<script language="VBScript">
<![CDATA][
Sub query2list(objConn, query)
Dim objRs
Set objRs = objConn.Execute(query)
If objRs.EOF AND objRs.BOF Then
Response.write "<option value='none'>没有找到记录。</option>"
Else
Do While Not objRs.EOF
Response.write "<option value='" &;amp; objRS(0) &;amp; "'>" &;amp; objRs(0) &;amp; "</option>"
objRs.MoveNext
Loop
End If
objRS.Close
Set objRS = nothing
End Sub
]]>
</script>
</scriptlet>
其中在scriptlets中使用的各种元素的具体说明可以在http://msdn.microsoft.com/scripting处找到。
下面是怎么具体调用scriptlets的代码:(只要是在同一个服务器上注册了scriptlets的运用程序,都可以使用这段代码)
query2list.asp 文件:
<%@ Language=VBScript %>
<%
Option Explicit
Dim objConn
Dim dbPath
Dim sql
Dim objScpQuery2list
Set objConn = Server.CreateObject ("ADODB.Connection")
dbPath="DBQ=" &;amp; Server.MapPath("techpapers_test.mdb")
objConn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; " &;amp; dbPath
'--- query required for pull down
sql = "select AuthorFirst from Papers"
Set objScpQuery2list = Server.CreateObject ("scpquery2list.Scriptlet") 9
7
3
12
3
4
4
8
:
| 感谢原创者的辛勤劳动,希望对您有所帮助,转载请注明原出处。 |