注册 登录
编程论坛 ASP技术论坛

请教,asp 怎么做动态递增数显?

gesongs 发布于 2011-08-18 18:19, 874 次点击
代码如下:
<%
for i=1 to 100
i=i
Response.Write(i&"<br>")
next
%>
如何将上述的结果 不用刷新 动态的 像计数器 一样自己递增由1累加 最后显示  100
12 回复
#2
dzt00012011-08-18 19:55
要动态效果,要用JS
#3
gesongs2011-08-19 07:54
js 怎么做 动态 递增 计数器呢?
#4
dzt00012011-08-19 09:01
程序代码:
计数:<span id="dd"></span>
<script type="text/javascript">
var number = 0;
function run(){
    var s = document.getElementById("dd");
    if(number == 100){
        return false;
    }
    number += 1;
    s.innerHTML = number;
}
window.setInterval("run();", 100);    //这里的数字单位是毫秒,1000是1秒,100就是0.1秒
</script>
#5
ysf01812011-08-19 09:12
经典制作。好代码。
#6
ysf01812011-08-19 09:12
以下是引用dzt0001在2011-8-19 09:01:13的发言:

计数:
 
var number = 0;
function run(){
    var s = document.getElementById("dd");
    if(number == 100){
        return false;
    }
    number += 1;
    s.innerHTML = number;
}
window.setInterval("run();", 100);    //这里的数字单位是毫秒,1000是1秒,100就是0.1秒
 
不错哦。
#7
wdfting2011-08-19 11:02
真不错
#8
gesongs2011-08-20 16:32
谢谢!是这个效果 但是 小弟不会运用这段代码 如何
和asp 代码 一起运用  实现 动态上传数据?
<%
for i=1 to 100
i=i
Set conn = server.CreateObject("ADODB.Connection")
connstr = "provider=microsoft.jet.oledb.4.0;data source=" & server.mappath("date/db.mdb")
conn.open connstr
Set rs=Server.CreateObject("Adodb.RecordSet")
sql="select * from tabel"
rs.open sql,Conn,1,3
rs.addnew
rs("i")=i
rs.update
rs.close
conn.close
set rs=nothing
set conn=nothing
next
%>
让上述代码  由1到100一个个的上传  同时看到 由1 变到 100 的动态效果
当到 100的时候 也就上传完毕
#9
gesongs2011-08-22 23:32
每人 会了吗? 等得好心急啊
#10
dzt00012011-08-23 10:04
代码可以写。但这样做没有任何意义,从1到100保存,不到1秒就完成了,你看不到效果的。
#11
gesongs2011-08-28 16:33
dzt0001  我很崇拜你 每次我遇到的 asp  问题 都是你帮我解决掉的 很谢谢你!
是这样的,我写了一个 小程序 是用来 释放 一些数据 到数据库里的
有时候 释放 几千 几万  都是 从 1开始 递增 一直到 结束
但是 过程中 希望 能让操作者 能看到 他释放的 数据 在动  让其直观
的看到  等待过程中 释放的数据 是由 1 2 3 .。。。这样在跳动  否则单一的
释放界面 用 gif 图片 表示 等待  释放者 还以为 系统死掉了 他看到 数据在
跳动 就不会误认为 释放 系统 死掉了
<%
for i=1 to 10000
Set conn = server.CreateObject("ADODB.Connection")
connstr = "provider=microsoft.jet.oledb.4.0;data source=" & server.mappath("date/db.mdb")
conn.open connstr
Set rs=Server.CreateObject("Adodb.RecordSet")
sql="select * from tabel"
rs.open sql,Conn,1,3
rs.addnew
rs("i")=i
rs.update
rs.close
conn.close
set rs=nothing
set conn=nothing
next
%>
上述代码 是 将 i 递增的由1 到 10000往 数据库里写入 让等待的过程中能看到 动态 由1递增到10000的释放效果
#12
dzt00012011-08-29 09:51

你一定要的话,就写给你吧。我这里设了1-500,太多容易造成系统死机,为了看一下需要多长时间,我加了计时器。
说明一下:<% Response.Buffer = false %>是将ASP生成的HTML不缓存,直接输出到页面上
程序代码:
<% Response.Buffer = false %>
<span id="n1"></span> / 500 <br />
<script type="text/javascript">
function f1(n) {
document.getElementById(
"n1").innerHTML=n;
}
</script>

<%
startime
=timer()    '计时器开始

for i=1 to 500
Set conn = server.CreateObject("ADODB.Connection")
connstr
= "provider=microsoft.jet.oledb.4.0;data source=" & server.mappath("db1.mdb")
conn.open connstr
Set rs=Server.CreateObject("Adodb.RecordSet")
sql
="select * from tabel"
rs.open sql,Conn,
1,3
rs.addnew
rs(
"i")=i
rs.update
response.write
"<script type=""text/javascript"">f1("&i&")</script>"
rs.close
conn.close
set rs=nothing
set conn=nothing
next

ProcessTime
=FormatNumber((timer()-startime))
if ProcessTime<1 then ProcessTime="0"&ProcessTime
%>
<%=ProcessTime%> second(s)
#13
gesongs2011-08-30 00:36
大哥!太崇拜你了! 很不错的代码 我收藏了!虽然 java 没看懂 但是 打心里崇拜你!
1