遇到一个非常烦人的页面刷新问题,非常苦恼,请各位大哥帮助!
用户通过login.jsp登陆成功后,来到一个main.jsp的页面,这个页面是一个系统主页面,包括导航目录!
main.jsp的页面效果如附加图,这是一个T型结构的页面!全屏式!
页面内容为:
。。。//T型A区域的代码,省略
<div class="bodyFrame">//这是T型B,C区域的一个根结构
<div id="parentId" style="position: relative; top: 0px; left: 0px; width: 100%; height: 635px;">
</div>
</div>
在这个parentId下面挂载一个dhtmlXLayoutObject对象,具体为:
<script>
var dhxLayout = new dhtmlXLayoutObject("parentId", "2U");
leftLayout=dhxLayout.cells("a");// leftLayout代码T型B区域,上面显示导航的树结构
leftLayout.setText("<img src='<%=context%>/sysman/images/control.gif'>我的工作台");
leftLayout.setWidth(160);
leftLayout.setHeight(20);
var dhxAccord = leftLayout.attachAccordion();
rightLayout=dhxLayout.cells("b");//rightLayout代表的是T型C区域,在这个对象下面显示页面情况
var text="<a href='www.google.com'><img src='<%=context%>/temp/pin2.gif' border='0'></a> "+
"<a href='www.google.com'><img src='<%=context%>/temp/pin2.gif' border='0'></a> "+
"<a href='www.google.com'><img src='<%=context%>/temp/pin2.gif' border='0'></a> "+
"<a href='www.google.com'><img src='<%=context%>/temp/pin2.gif' border='0'></a> "+
"<a href='www.google.com'><img src='<%=context%>/temp/pin2.gif' border='0'></a> "+
"<a href='www.google.com'><img src='<%=context%>/temp/pin2.gif' border='0'></a> "+
"<a href='www.google.com'><img src='<%=context%>/temp/pin2.gif' border='0'></a> ";
rightLayout.setText(text);
rightLayout.setHeight(200);
rightLayout.attachURL("<%=context%>/personset/deskSet/person/person.htm");
var tree;
function tonclick(id){
var url=tree.getUserData(id,"url");
rightLayout.attachURL(url);
};
var date=new Date();
dhxAccord.addItem("a8", " 人力资源");
var tree8 = dhxAccord.cells("a8").attachTree();
tree8.setImagePath("<%=context%>/sysman/images/tree/");
tree8.loadXML("<%=context%>/xmls/navigator-humanResource.xml");
tree8.setOnClickHandler(function(id){
var url=tree8.getUserData(id,"url");
rightLayout.attachURL(url);//从XML文件中得到一个URL,然后在C区域显示出来,下同。
});
dhxAccord.addItem("a10", " 系统管理");
var tree10 = dhxAccord.cells("a10").attachTree();
tree10.setImagePath("<%=context%>/sysman/images/tree/");
tree10.loadXML("<%=context%>/xmls/navigator-systemSetup.xml");
tree10.setOnClickHandler(function(id){
var url="<%=context%>"+tree10.getUserData(id,"url");
url=url+"?time="+date.getTime();
rightLayout.attachURL(url);
});
dhxAccord.addItem("a11", " 个人设置");
var tree11 = dhxAccord.cells("a11").attachTree();
tree11.setImagePath("<%=context%>/sysman/images/tree/");
tree11.loadXML("<%=context%>/xmls/navigator-personSetup.xml");
tree11.setOnClickHandler(function(id){
var url=tree11.getUserData(id,"url");
rightLayout.attachURL(url);
});
dhxAccord.openItem("a10");
</script>
点击,导航树上(main.action)的某一个结点,可以得到URL的值,并且可以在C区域正确的显示出来,现假设这个URL是right.action,
路径查看:B区导航树的路径为main.action,C区路径为right.action 全都正确
现在的问题是:
右击C区域,刷新页面,right.action,程序并没有向后台去访问,这是因为缓存的原因,因为这个路径是左边传过来的,所以,即使加时间截也是不行的
更奇怪的是,整个页面一下子全部都坏掉,就是整个屏显示的是一个类型网络联系不上的页面,按理说,这么刷新应该只对right.action即,以区域有效才行。
但为什么会这样呢?另外,特别说明的是,我做过一个DEMO,全部是HTM页面,也是用这种方式来实现,但刷新没有任何问题!
希望各位用过这个东西的兄弟姐妹可以与我一起讨论这个问题。谢谢