您现在的位置: 无忧电子商务网 >> 信息学院 >> 程序开发 >> asp >> 正文

ASP精华文摘-001 (转)

作者:作者:未…    信息学院来源:网络收集    点击数:    更新时间:2006-8-27 我要参与讨论

  来源:www.yesky.com
转贴-RESPONSE对象(2000.03.22)

RESPONSE对象

RESPONSE对象非常有用而且功能丰富。这里我们将要给大家介绍的是其最基本的功能。
当然它的所有功能比我们在这里所要介绍的多得多,但我们认为这里所要介绍的20%的
内容是你会在80%的时间中都会用到的。我们认为RESPONSE对象主要的功能如下:

# RESPONSE.WRITE
# RESPONSE.WRITE也可以简写为<%=%>这样的格式简单的嵌入到HTML语言中
# RESPONSE.REDIRECT方法可以使浏览器尝试连接到其他 URL
# RESPONSE.END可以有效地终止一段脚本的继续解析

RESPONSE对象第二部分——BUFFER控制
Response object error 'ASP 0156 : 80004005'
Header Error
whatever.asp, line #
The HTTP headers are already written to the client browser.
Any HTTP header modifications must be made before writing page content.

这样的错误信息是否也同样困扰过你?
不过只要你把"<%response.buffer=true%>”这一行加在任何一页混合着REDIRECTS和
网页内容的网页的第一行,你就不会再看到这样的错误了!这一行会解除浏览器发出:
"HEADERS ARE ALREADY SENT”信息。

Buffer属性指示是否缓冲页输出。也就是说添加这个属性后页面所有的信息会先放入
缓冲页中,等到当前页的所有服务器脚本处理完毕之后才向浏览器写入。如果当浏览
器已经写了一些什么内容之后,你就再也不能使用RESPONSE.REDIRECT了,因为浏览器
不能又写内容又REDIRECTS(改变方向)。

<%response.buffer=true%>主要是告诉浏览器在一下事件发生之前不要写入任何东西:
a) response.end执行前
b) response.flush执行前
c) 当前页的所有服务器脚本处理完毕之前
d) response.redirect命令已被发送,并且没有任何内容通过response.flush被发送之前。

<%response.buffer=true%>的唯一缺点就是缓冲将在服务器未处理完当前页的所有脚本之前
阻止在客户端显示响应。如果页面要花一点时间来组织(比如从数据库中提取上千条的记录),
这样在网页没有被完全提交给浏览器之前人们看不到任何信息,时间久了网页看上去就似乎
是没有响应了。为了避免这样的情况,通常使用RESPONSE.FLUSH可以让用户看已经组织完成
的部分页面内容。

RESPONSE对象第二部分——Redirect方法

Redirect 方法使浏览器尝试连接到其他 URL,这个很类似于HTML中<meta refresh>的功能。
以下是这个方法的一个例子:

<html><head>
<TITLE>FormJump.asp</TITLE>
</head><body bgcolor="#FFFFFF">
<form action="FormJumpRespond.asp" method="get">
<SELECT NAME="wheretogo">
<OPTION SELECTED VALUE="fun">Fun</OPTION>
<OPTION value="news">Daily News</OPTION>
<OPTION value="docs">ASP IIS3 Roadmap/Docs</OPTION>
<OPTION value="main">MainPage of ActiveServerPages.com</OPTION>
<OPTION value="sample">IIS 3 Sample ASP scripts</OPTION>
</SELECT>
<input type=submit value="Choose Destination">
</form>
</body></html>


The responder that reacts to this form is:

<%response.buffer=true%>
<html><head>
<title>formjumprespond.asp</title>&
<body bgcolor="#FFFFFF">
<%
' My ASP program that redirects to URL
thisURL="http://www.joyeasy.net/"
where=Request.QueryString("Wheretogo")
Select Case where
case "main"
response.redirect thisURL & "/"
case "samples"
response.redirect thisURL & "/aspsamp/samples/samples.htm"
case "docs"
response.redirect thisURL & "/iasdocs/aspdocs/roadmap.asp"
case "news"
response.redirect "http://www.sina.com"
case "fun"
response.redirect "http://www.nease.com"
End Select
response.write &quo

[1] [2] [3] [4] 下一页

在google里搜索更多ASP精华文摘-001 (转)

Google
Web www.51ec.org
【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
我来说两句 对此文章发表了评论
  昵 称: *必填    ·注册用户·
  评 分: 1分 2分 3分 4分 5分     严禁发表危害国家安全、政治、黄色淫秽等内容的评论,用户需对自己在使用本网站服务过程中的行为承担法律责任。本站管理员有权保留或删除评论内容,评论内容只代表机友个人观点,与本网站立场无关。  
评 论
内 容

 
评论列表 (最新 评论仅限网友观点!)

供求信息




| 设为首页 | 加入收藏 | 关于我们 | 广告服务 | 联系方式 | 友情链接 | 版权申明