情况是这样的,A.aspx页面有个<a href="B.aspx页面地址">跳转地址</a>的超链接,点击时,可以发生页面跳转。
但是如果页面B.aspx需要加载运算结束后才能显示的情况下,这样点击的人可能以为没反应而多次点击,导致页面崩溃。怎么避免呢,就是在跳转时先显示一个等待页面,等到真正的页面加载结束后,再从等待的页面跳转到请求的页面。
好了,不多说了,上代码。很多都是网来的 ^&^
1、先建立一个等待页面C.aspx
<mce:script type="text/javascript"><!--
//得到地址栏传递参数的函数
function QueryString(qs)
{
var s = location.href;
s = s.replace("?","?&").split("&");
var re = "";
for(i=1;i<s.length;i++)
if(s[i].indexOf(qs+"=")==0)
re = s[i].replace(qs+"=","");
location.href= re;
}
// window.alert(location.href);
// --></mce:script>
</head>
<body>
<form id="form1" runat="server">
<div style="position:absolute; left:40%; top:40%; z-index:105">
<img src="../images/system/loadinfo.net.gif" mce_src="images/system/loadinfo.net.gif" width="30" height="23" alt="加载图片">程序加载中.....
</div>
<div align="center">
<mce:script type="text/javascript"><!--
if (document.layers)
document.write('<Layer src="' + QueryString(" mce_src="' + QueryString("kid") + ' " VISIBILITY="hide"> </Layer>');
else if (document.all || document.getElementById)
document.write('<iframe src="' + QueryString(" mce_src="' + QueryString("kid") + '" style="visibility: hidden;" mce_style="visibility: hidden;"></iframe>');
else location.href = QueryString("kid");
// --></mce:script>
</div>
</form>
</body>
</html>
这个页面用来接收A.aspx页面传来的URL参数值
2、将A.aspx页面的跳转语句改成<a href="C.aspx?id=B.aspx">跳转地址</a>,注意看,那个C.aspx就是等待页面,而URL传值的参数id,也就是C.aspx中,javascript方法QueryString("")的参数,所以上面中参数为id
3、点击运行,大功告成。