日期:2014-05-16 浏览次数:20400 次
JS的open画面机制和jsp中帧对应:
画面描述: 
我写了4个画面: 
1 画面是Main画面,其中有两帧是Button和List。 
2 画面是Button画面,其中有按钮“添加”,“修改”和快捷检索功能。 
3 画面是List画面,其中有列表记录。 
4 画面是Error画面,其中有返回按钮。 
Main画面代码中的帧应用是: 
<frameset rows= "160,* " frameborder= "no " border= "0 " framespacing= "0 " id= "frmMain "> 
<!-- button 区 --> 
<frame src= "./testAction.do?method=button " name= "frmButton "/> 
<!-- list 区 --> 
<frame src= "./testAction.do?method=list " name= "frmList " /> 
</frameset> 
Error画面中的返回按钮代码是: 
window.history.go(-1); 
问题描述: 
1、输入快捷检索条件,检索得到记录显示到List画面中。 
2、操作List画面中的连接后发生错误,Target指向Main画面,转移到Error画面。 
3、点击Error画面中的“返回”,返回到原来有快捷检索后的列表记录(没有执行Action的Button和List方法,这时正确的)。 
4、快捷检索条件保留数据和List列表数据都是正确的。 
5、重新操作第1条。 
6、点击“添加”或“修改”按钮打开小画面(用的是js的OPEN打开的小画面)。 
7、不作任何操作,关闭小画面。 
8、重新操作第2条。 
9、点击Error画面中的“返回”,错误发生了,因为重新执行了Action的Button和List方法,所以Form中的快捷检索条件都是NUll,没有保存下来,List列表数据是所有记录,而不是快捷检索后的记录。 
为什么打开小画面后就要重新执行Action的Button和List方法,怎么解决快捷检索条件的保存问题?
------解决方法--------------------
JS的open画面机制和jsp中帧对应,放到request或session,request放的内容多存取几次,session记得用完清理就可以了。 
------解决方法--------------------
window.history.go(-1);是西显示的缓存中的, 
你的6,7关闭后是不是做了什么动作,比如刷新之类