往数据库增加记录,重回页面却看不到刚加的记录,须刷新才能看到,怎么回事?

向大家请教,我在一个ASP文件A提交表单到另一ASP文件B,任务是往ACCESS增加一条记录,完成后response.redirect "a.asp".这个ASP文件就负责读取数据库的记录出来并显示.
现在每次增加记录都是成功的,但返回文件A时却不能显示,必须重进一次(相当于刷新吧?)才能显示.
百思不得其解之下,向大家请教,谢谢!
---------------------------------------------------------------

你不用response.redirect
改用: response.write"

1<script language="javascript">window.location.href='a.asp'</script>

"
---------------------------------------------------------------
如果还不行的话,后面再加个参数.window.location.href='a.asp?temp=.123456789"
---------------------------------------------------------------
response.redirect 只是服务器里的页面跳转,跳转的目的网页可以是服务器缓存里的页面(如果有的话),这是ASP的一种加速访问的方法,但恰是这个方法造成了目的页面是缓存页面的后果。
response.write"

1<script language="javascript">window.location.href='a.asp'</script>

"
这个写法是传递给客户端一个页面跳转的动作语句,由客户端向服务器端发出一个页面跳转的请求,这个请求与你在浏览器里键入新地址所发出的请求是一样的。这种请求启到了服务器的应答,也从而迫使服务器重新运行该ASP网页,当然这结果是看到了新添加的内容了。

当然BrightEye(问个不休) 的那种给ASP网页传入一个随机参数的做法也是避免服务器的缓存网页,因为该网页接收到了一个不同的参数,即认为是重新读取而不是用缓存页了。CSDN也就是采用了这种方法,你看每个问题打开之后,地址栏里都有一个temp=.234567(随机数),随机数一般是不大会重复的,这样即可保证每次打开ASP网页所传入的参数都不相同从页达到目的。

Published At
Categories with Web编程
Tagged with
comments powered by Disqus