求一段不刷新當前頁面執行過程的asp程序

pengxiang 2003-08-29 08:01:09
如題.
1.點擊鏈接執行(例如改變背景音樂)
2.保持當前頁不會刷新,也不會轉到其它頁面
...全文
73 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
77334683 2003-10-08
  • 打赏
  • 举报
回复
sdsd
possible_Y 2003-08-30
  • 打赏
  • 举报
回复
<%
dim vbgmidi
if IsEmpty(session("bgmidi"))=True or session("bgmidi")=81 then
session("bgmidi")=1
else
session("bgmidi")=session("bgmidi")+1
end if
vbgmidi=session("bgmidi")
if len(vbgmidi)<2 then
vbgmidi="0" & vbgmidi
end if
vbgmidi="./midi/midi" & vbgmidi & ".mid"
%>
<body>
<head>
<title></title>
<script>
function change(arg)
{
var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
xmlhttp.Open("POST", "change.asp?do="+arg, false);
xmlhttp.Send();
document.all("bgsd").src="./midi/midi"+xmlhttp.responseText+".mid";
}
</script>
</head>
<body>
<bgsound src="<%=vbgmidi%>" loop=-1 volume=100 id="bgsd">
<a href="javascript:change('next')">下一首</a>
<a href="javascript:change('pre')">上一首</a>
</body>


change.asp:
<%
if IsEmpty(session("bgmidi"))=True or session("bgmidi")=81 then
session("bgmidi")=1
else
session("bgmidi")=session("bgmidi")+1
end if
Response.write session("bgmidi")
%>
foglee 2003-08-30
  • 打赏
  • 举报
回复
考~!那还有什么说的,只能用SCRIPT来控制了。因为ASP是服务器端脚本,客户端不提交到服务器端的话脚本是不可能执行的,所以一定得刷新。而script是客户端脚本,不需要服务器端响应,也就不会刷新页面了。
Brookes 2003-08-30
  • 打赏
  • 举报
回复
function midi()
.....
Response.Write("<div id=div1><bgsound src=" & vbgmidi & " loop=-1 volume=100><div><a href=# oncick=div1.innerHTML=chg.asp?id=1")
end function
%>

chg.asp
.....
Response.Write("<bgsound src=xxxx><a href=# oncick=div1.innerHTML=chg.asp?id=2")
pengxiang 2003-08-30
  • 打赏
  • 举报
回复
第一次"將貼子提前",提示"提前太頻繁了!"

!!自己up!
possible_Y 2003-08-30
  • 打赏
  • 举报
回复
function change(arg)
{
i=i+1; //产生一个变量,使每次的url参数都不一样,从而防止浏览器的页面缓存
var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); //创建一个xmlhttp对象
xmlhttp.Open("POST", "change.asp?i="+i+"&do="+arg, false); //向change.asp提出请求,并且带了2个参数i和do,i是用来防止浏览器的页面缓存
xmlhttp.Send(); //发送请求
document.all("bgsd").src="./midi/midi"+xmlhttp.responseText+".mid"; //将页面对象bgsd的src属性改为xmlhttp对象提交后的返回值
}

这里主要是xmlhttp的使用,它可以不用刷新页面而向后台发出请求,并通过xmlhttp.responseText来接收服务器返回的请求

change.asp里的程序根据url参数do来得知是该+1还是-1
possible_Y 2003-08-30
  • 打赏
  • 举报
回复
对不起上面的change.asp没写完,你把它改为:
<%
if Request("do")="next" then
if IsEmpty(session("bgmidi"))=True or session("bgmidi")=81 then
session("bgmidi")=1
else
session("bgmidi")=session("bgmidi")+1
end if
else
if IsEmpty(session("bgmidi"))=True or session("bgmidi")=1 then
session("bgmidi")=81
else
session("bgmidi")=session("bgmidi")-1
end if
end if
vbgmidi=session("bgmidi")
if len(vbgmidi)<2 then
vbgmidi="0" & vbgmidi
end if
Response.write vbgmidi
%>
stefli 2003-08-30
  • 打赏
  • 举报
回复
加一个iframe,让他根据你的要求刷新,就可以改变音乐了.
循环那些设置的,在iframe中,都可以得到相应的设置.
这样就不会影响到你的当前音乐了.
pengxiang 2003-08-30
  • 打赏
  • 举报
回复
謝謝 possible_Y(一切皆可能)!

再請教一下:
function change(arg)
{
i=i+1;
var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
xmlhttp.Open("POST", "change.asp?i="+i+"&do="+arg, false);
xmlhttp.Send();
document.all("bgsd").src="./midi/midi"+xmlhttp.responseText+".mid";
}
這段能不能幫忙注釋一下?
參數arg我怎樣傳遞到change.asp中來改變循環的方式?(如目前只是next,即+1,要怎樣判斷參數才改成pre中-1?)

太菜了,不很明白^_^
possible_Y 2003-08-30
  • 打赏
  • 举报
回复
<%
dim vbgmidi
if IsEmpty(session("bgmidi"))=True or session("bgmidi")=81 then
session("bgmidi")=1
else
session("bgmidi")=session("bgmidi")+1
end if
vbgmidi=session("bgmidi")
if len(vbgmidi)<2 then
vbgmidi="0" & vbgmidi
end if
vbgmidi="./midi/midi" & vbgmidi & ".mid"
%>
<body>
<head>
<title></title>
<script language="javascript">
i=0
function change(arg)
{
i=i+1;
var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
xmlhttp.Open("POST", "change.asp?i="+i+"&do="+arg, false);
xmlhttp.Send();
document.all("bgsd").src="./midi/midi"+xmlhttp.responseText+".mid";
}
</script>
</head>
<body>
<bgsound src="<%=vbgmidi%>" loop=-1 volume=100 id="bgsd">
<a href="javascript:change('next')">下一首</a>
<a href="javascript:change('pre')">上一首</a>
</body>


change.asp:
<%
if IsEmpty(session("bgmidi"))=True or session("bgmidi")=81 then
session("bgmidi")=1
else
session("bgmidi")=session("bgmidi")+1
end if
vbgmidi=session("bgmidi")
if len(vbgmidi)<2 then
vbgmidi="0" & vbgmidi
end if
Response.write vbgmidi
%>
pengxiang 2003-08-29
  • 打赏
  • 举报
回复
tonnycncn(托尼)(weiw.com):

我用的是自動循環播放,希望能做在鏈接上,直接點擊改變當前背景音樂,而不需要用select,不知能不能實現?

自動循環播放代碼如下:
<%
function midi()
rem 背景音樂子程序,"81"是曲目總數
dim vbgmidi
if IsEmpty(session("bgmidi"))=True or session("bgmidi")=81 then
session("bgmidi")=1
else
session("bgmidi")=session("bgmidi")+1
end if
vbgmidi=session("bgmidi")
if len(vbgmidi)<2 then
vbgmidi="0" & vbgmidi
end if
vbgmidi="./midi/midi" & vbgmidi & ".mid"
Response.Write("<bgsound src=" & vbgmidi & " loop=-1 volume=100>")
end function
%>

李睿_Lee 2003-08-29
  • 打赏
  • 举报
回复
用JavaScript

tonnycncn 2003-08-29
  • 打赏
  • 举报
回复
http://www.weiw.com/article/list.asp?id=549
pengxiang 2003-08-29
  • 打赏
  • 举报
回复
鏈接代碼?
fuzq 2003-08-29
  • 打赏
  • 举报
回复
response.redirect url

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧