征求解决页面刷新问题

clxxj 2005-10-19 10:28:58
先简单介绍一下我的问题:
页面A,页面B.
其中页面B是一个包含在页面A的IFRAME页面.


先在页面A中有一数据列表,上下移动列表的时候根据行的ID从XML中读取B页面相关的信息(在服务端代码中读取).
由于上下光标的时候iframe src指向的页面B重新构造页面B,页面B明显感觉到在刷新,尤其快速上下移动的时候闪的更加厉害。

请问用啥方法可以解决这问题.
...全文
315 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
qgqchile 2005-10-21
  • 打赏
  • 举报
回复
SmartNavigation 虽然可以缓解一些刷新的问题但同时也会带来许多的问题,浏览器的支持,对JS的影响等等,在GOOGLE上随便一搜都能看到,如果你用了大量的JAVASCRIPT代码又或者不能确定客户端浏览器慎用SmartNavigation

现在来看用AJAX还是比叫好的解决方法



clxxj 2005-10-21
  • 打赏
  • 举报
回复
如果沿用我原来那种方式,就是A页面中嵌套B页面,采用AJAX技术应该可以吧
pwqzc 2005-10-21
  • 打赏
  • 举报
回复
只能够ajax了哦
foyuan 2005-10-20
  • 打赏
  • 举报
回复
AJAX 呵呵 新技术可以
singlepine 2005-10-20
  • 打赏
  • 举报
回复
^_^,刷新是免不了的,只是看刷新的程度严重而已,可以用xmlhttp试试,或用ajax试试,看你爱好了.
jimu8130 2005-10-20
  • 打赏
  • 举报
回复
学习sp1234
hchxxzx 2005-10-20
  • 打赏
  • 举报
回复
你可以纯粹使用xmlhttp的方式来实现你的想法,而不要使用iframe的方式.
另外,当你鼠标快速移动的时候,无论是什么方法,都会造成大量的刷新,即使页面上不体现出来,服务器上也会有所反应.所以,必须采取一定的方式来避免这种情况发生.
如何避免呢?
你可以在客户端,让每个读取的动作延时执行,比如下面
var sid = "";
//假设以下的脚本是响应光标的移动去读取数据
function f(id)
{
if(id == sid)
{
//开始执行读取代码
fc();
}
else
{
sid = id;
setTimeout("fc()",200);//0.2秒的延时,判断用户是否无意义的快速移动鼠标
}
}

function fc()
{
//取当前的SID值,运用xmlhttp方法求取要显示的值
}

如此,当用户快速移动鼠标时,由于使用了延时,所以多数情况下,都不会给予响应,只有在需要的时候,才去读取数据.
以上代码,还必须进行测试/补充.
clxxj 2005-10-19
  • 打赏
  • 举报
回复
to sp1234:
采用VIEWSTATE的方法在我这里行不通,因为无论是A页面还是B页面数据量都比较大.很容易超出内存.

B页面中包含很多DATAGRID列表并且还有分页控件,需要排序和翻页.
如果像你说的方法要重新构造那么多TABLE不是一件很麻烦的事啊?

  • 打赏
  • 举报
回复
我有一个技术输出用的实用程序,http://wuweihome.dec.cn,看看点击列表数据的时候编辑区的变化。我采用了最笨的办法,在同一画面上部分改变的时候没有使用iframe,就是普普通通的把(你的)A与B的内容摆在一起就可以了(如果你怕刷新B部分的时候重新产生A部分比较慢,可以将它缓冲在ViewState里边),使用了smartNavigation。

其实我早就想采用高效的办法,可惜至今找不到。
  • 打赏
  • 举报
回复
可以想见,使用xmlHttp组件获得页面的html然后写入内部框架,照样。因为这还是重新刷新内部全部内容,有一个闪烁。只能去掉状态栏上进度条的闪烁,而这个闪烁其实不应该禁止。

我也不确定对页面B使用smartNavigation有用。因为你是修改了内部框架的url,而不是它自己回发,而smartNavigation似乎只对回发的页面有效。
  • 打赏
  • 举报
回复
web机制就是有延时。即使本地也有短暂的延时。如果你页面B设置了smartNavigation会缓解闪烁的程度。
charles_y 2005-10-19
  • 打赏
  • 举报
回复
使用xmlhttp,无刷新显示数据
clxxj 2005-10-19
  • 打赏
  • 举报
回复
如果CSDN能否帖图片多好啊,很多问题图示可能效果好点。
moodboy1982 2005-10-19
  • 打赏
  • 举报
回复
说得这么复杂,帮你顶好了。

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

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