刚接到这个项目的时候感觉计算数据不会占用太多的时间,所以没有考虑用ajax做,而是直接将获取到的数据用table的形式展示出来,而随着项目的深入,却出现了这样的问题:打开页面时,因为后台忙于计算数据,所以用户只能看到白花花一个页面,而这个时候在改成ajax就有些伤筋骨了,于是在网上大概找了找类似的问题,有很多人文,可是正面回答的人却不多,更多的人都是说用AJAX解决~用GIF解决~用CSS解决~~,那该怎么解决呢?
先说说我决定使用的方法,使用GIF图片:
在这里先要弄清楚一个基础问题,载入一个asp页面时,系统将先访问.cs文件中 protected void Page_Load(object sender, EventArgs e)的文件,然后是asp中的<% = %>内容(实际上也是.cs文件中的内容),在然后才是脚本文件。
知道这点,那么就好解决了,在显示内容前,给用户显示GIS图片图片就可以了,在<body>标签中添加:
<div id="loading" style=" width: 80%; height: 100%">
<img alt="加载中" id="loadgif" src="../p_w_picpaths/loader.gif" /> </div>然后在添加一个js脚本用来隐藏gif图片就搞定了~
<script type="text/jscript">
document.getElementById("typediv1").style.display="none";//隐藏
</script>
---------------------------------------------------------
相对于我使用的方法,ajax通过js从某种方面来说更容易控制,这里我用jquery来进行介绍,相对页面的某个局部去进行数据更新,那么在针对的DIV图层id进行内容更新即可:
<div id="test"></div>
<script type="text/jscript">
$.ajax({
url: '.cs文件所在的连接 ', type: 'POST', dataType: 'html', success: function (data) { $("#test").html(data); } });</script>
-----------------------------------------------------
而是用css虽然耗费的资源最少,使用上却需要写考虑,这里我把整个页面都放出来,有需要的人拿出用吧~