手机站
网通分站
电信主站
密 码:
用户名:
当前位置 : 主页>网络编程>Asp编程>列表

关于页面的客户端翻页功能的实现

来源:互联网 作者:west263.com 时间:2008-02-23
西部数码-全国虚拟主机10强!40余项虚拟主机管理功能,全国领先!双线多线虚拟主机南北访问畅通无阻!免费赠送企业邮局,.CN域名,自助建站480元起,免费试用7天,满意再付款! P4主机租用799元/月.月付免压金!
  前几天老板要求实现页面局步刷新的功能 在网上查了很久。 发现, 我们在做网页的局部动态刷新的功能的时候常用的方法,是iframe和 FrameSet ,不过这两种方法也有他的弊端。那就是页面的大小不好控制的问题。于是我想到了用javascript 中的 xmlhttp对象来动态的获取其他页面的信息作为本页面的一部分的方法。于是按照这个方法做了一个,效果还不错。下面把主要思路写下来 ,供大家参考!

  我得思路是这样的,在主页面上编写一段javascript的小函数,执行的功能是利用xmlhttp对象根据所给的参数获得另一个页面中的数据页面,然后动态的显示在主页面中。看上去好像是没有什么问题,但是在用户交互上就不是那么好控制,因为在主页面上显示的是纯的html的代码,但是子页面上的交互功能却不好实现了。于是我就想到了在子页面上来调用主页面的javascript代码,同时给他相应的参数。这样,既实现了动态局部刷新,又保证了子页面的用户交互性。

  主要代码如下 :

  在主页面中用这段javascript 代码获取子页面的代码

<script language=javascript>
var oDiv
var xh
function getPageDataFromUrl(url,div)
{
oDiv = div
oDiv.innerHTML = "正在加载数据,请稍侯......."
xh = new ActiveXObject("Microsoft.XMLHTTP")
xh.onreadystatechange = getReady
xh.open("POST",url,"false");
xh.send();
}
function getReady()
{
if(xh.readyState==4)
{
if(xh.status==200)
{
strTest = xh.responseText ;
re = /form/;
strTest=strTest.replace(re,"ggggg");
oDiv.innerHTML = strTest;
}
else
{
oDiv.innerHTML = "由于:" xh.statusText "数据加载失败";
}
}
}
</script>

<body onload='getPageDataFromUrl("PostClubIndexList.aspx",document.all.ListBox);>

  然后,在自页面中用

<A class="a_hei00" href="#" onclick="parent.getPageDataFromUrl('<%#System.Web.HttpContext.Current.Request.CurrentExecutionFilePath "?Page=1"%>',document.all.ListBox)">首页</A></TD>

  的代码来回调主页面中的javascript函数,重新传给url连接 这样就实现了页面的客户端翻页的效果。

文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!