功能要求:
在页面加载过程中,因加载的数据比较 耗时,希望在加载过程中,含有友情提示,如“正在加载中.....请稍等...”
ps:请友情协助的朋友注意问题,是在页面刚加载的时候就提示,所以用updateprogress 是不行的。。不过应该可以通过
ajax异步加载数据或是多线程解决,但是对两知识点我了解比较少,求教!!
解决方案 »
- 网页怎么转成Word文档,大家讨论一下
- word转化成html 发布出错
- 126邮箱的"自动测速"功能原理是什么?
- 如何用.net开发一个跟踪用户点击网页连接(连接标题)的程序
- 求一段鼠标滚轮控制图片伸缩的JS代码
- ajax.net打开子窗口,并且子窗口打开选择值后,再返回父窗口的问题
- 在C#.net中如何判定:用户是否已离开WEB应用程序,以及离线的时间?
- |M| 300分 麻烦大家贴出您现在用的SQL分页存储程按主键排序和按非字键排序 再说说性能怎么样 发者有分 谢谢
- 请问怎样才不让别人看到我文件夹的程序内容?
- 为什么出现“未将对象引用设置到对象的实例”错误?
- 关于页面上iframe的问题,求解
- 如何判断文件夹里是否有文件存在。
不过我觉得可以这样
把所有要显示的内容用DIV 隐藏起来
然后用个设置显示加载中.....DIV为显示
过3秒加载中...DIV关闭 内容DIV 显示!!!!
你好! 我明白你的意思,不过 你的这种处理方式是不能满足我的要求的。。我的加载数据是在Page_load()中。并不是通过事件或什么来触发再加载。
然后在前台写一个js函数,控制div的显示与隐藏,在你的page_load方法里调用该js函数,让div显示出来,当数据加载完毕后,隐藏该div即可。
//显示进度条
function showProcess()
{
var msg = document.getElementById("divShowLoading");
msg.style.left = (document.body.clientWidth - 220) / 2 - 150;
msg.style.top = window.screen.height / 3 - 140;
msg.style.display = "block";
document.getElementById('btn_enter').disabled = "disabled";
document.getElementById('btn_cancel').disabled = "disabled";
document.getElementById('btn_org').disabled = "disabled";
document.getElementById('btn_checkadmin').disabled = "disabled";
document.getElementById('btnDefaultPage').disabled = "disabled";
}
//页面加载完毕隐藏进度条
function hiddenProcess()
{
var timerId=null;
var msg = document.getElementById("divShowLoading");
msg.style.left = (document.body.clientWidth - 220) / 2 - 150;
msg.style.top = window.screen.height / 3 - 140;
if(window.document.readyState != null && window.document.readyState != 'complete')
{
msg.style.display = "block";
}
else
{
msg.style.display = "none";
document.getElementById('btn_enter').disabled = "";
document.getElementById('btn_cancel').disabled = "";
document.getElementById('btn_org').disabled = "";
document.getElementById('btn_checkadmin').disabled = "";
document.getElementById('btnDefaultPage').disabled = "";
window.clearTimeout(timerId);
return;
}
timerId = window.setTimeout('hiddenProcess()', 100);
}
<head runat="server">
<title></title>
<style type="text/css">
.con{ position: absolute;width:50%;height:50%;background-color:silver;left:0px;top:0px}
</style>
</head>
<body>
<!--请用CSS控制下边的DIV是全屏状态-->
<div id="loading" class="con">页面加载中</div>
<form id="form1" runat="server" style="display:none"> 显示!!
</form>
</body>
</html><script type="text/javascript">
setTimeout("showDiv()",3000); function showDiv() {
document.getElementById("loading").style.display = "none";
document.getElementById("form1").style.display = "block"; //显示表单
}
</script>
我来替楼主说下吧,我猜测楼主又大批量的数据需要显示在某某grid里,那么这个大批量的数据的形成不要再页面初始化的时候直接去获得这个数据这样会显的打开网站非常慢。。
整个页面pageload里就做些页面元素的初始化,然后再到web段渲染html,然后在domready里显显示grid区域提示数据在加载,然后ajax请求到后台获得相关的数据。等数据返回显示在前台后就把提示语删除。。这样虽然增加了一次交互,但是整个页面加载感觉是有序的进行,而并非感觉是网络很卡一样,用户体验相对较好。