首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2EE开发 >

你见过这样的有关问题吗(?)

2012-01-10 
你见过这样的问题吗(??)在开发一项目过程中,使用了AJAX,struts,jsp...step1:界面一,有个“修改”按钮,主要是

你见过这样的问题吗(??)
在开发一项目过程中,使用了AJAX,struts,jsp...
step1:
界面一,有个“修改”按钮,主要是触发显示一窗口并根据给定的路径和参数,通过ajax与server交互,设置一些属性并跳转到指定窗口界面二

JScript code
function myModify_ajax(){    var gp_code;    if($("gp_code"))        gp_code = $("gp_code").value;    else        gp_code = null;        window.showModalDialog("PrivilegeManager_Query.do?toWay=show&gp_code="+gp_code,"dd","status:1;resizable:0;dialogWidth:45;dialogHeight:35");}


step2:
在界面二初始加载时,通过ajax获取一些界面需要的参数,并最终呈现该界面给用户

问题
第一次执行此过程时,通过tomcat的日志,可以看到点击修改按钮后,依次执行了step1,step2中设置的ajax路劲,并将界面需要的对象通过“request.Attribute()”设置,且成功获取。
当再次点击该“修改”按钮,传入同样的路径和参数后,通过日志观察,程序直接跳过step1,执行strp2。

这样就带来了一个问题,我已经修改成功的对象参数,当再次点击“修改”按钮时,取回的仍是之前的结果。

测试发现,出现该问题,将浏览器重启,再次执行时,第一次执行仍正确显示,以后有会出现上述情况。

问题很隐蔽,还望各位说说自己的看法.

[解决办法]
这个问题我同事遇过,我自己没测过,每次都是第一次可以,说是第一次也不准,如果第二次ajax提交的数据是上次未曾提交过的数据也是可以的,只要是已经提交过一次的数据就不行,后来说是因为缓存的原因,每次都要清空一下,具体做法我没去看,可以在网上搜一下清空的方法。
[解决办法]
这是一个很小的细节问题,属于浏览器缓存问题,解决这种问题很简单。。。

在你的 url 后面加上个参数 new date() 就行了;

例如: PrivilegeManager_Query.do?date=newdate()
[解决办法]
探讨
这是一个很小的细节问题,属于浏览器缓存问题,解决这种问题很简单。。。

在你的 url 后面加上个参数 new date() 就行了;

例如: PrivilegeManager_Query.do?date=newdate()

热点排行