郁闷~~~老郁闷了!有一个编辑页面、用弹出窗口方式实现编辑、在编辑之间、需要传递参数到后台去数据库取值:
刚刚开始的时候、使用OpenDialog弹出模式对话框、这样在后台取URL参数时、没有问题。但是在弹出的编辑页面中、还有一个弹出窗口、用于添加(就像、添加类型这类的东西)、Ajax方式添加完毕后、关闭添加页面、需要刷新当前编辑页面。所以、使用OpenDialog方式就无法完成刷新功能、于是换成了open。但是使用open方法弹出窗体时、后台取不到URL参数。
list页面中open代码:function OpenWindowsHzw(FileName, OpenW, OpenH) {
var w, h, str;
w = (window.screen.availWidth - 27) / 2 - OpenW / 2;
h = (window.screen.availHeight - 8) / 2 - OpenH / 2;
str = "width=" + OpenW + ",height=" + OpenH + ",top=" + h + ",left=" + w
+ ",resizable=0,scrollbars=yes";
var newWin = window.open(FileName, "window", str);
newWin.focus();
}function doEdit() {
var id = $("#hiddenid").val();
if (null == id || "" == id) {
return alert('请选择会议室!');
}
var str = "<%=path%>/platform/meetresedit!getMeetById.action?meetResId=" + id;
alert(str);
OpenWindowsHzw(str,550,400);
window.location.reload();
}
提交到Action后、在Action中获取meetResId的值为:null(但是有时候、又可以获取):                  String meId = null;
try {
                           //这种方式也是鸟的
                           Object obj = ActionContext.getContext().get("meetResId");
                           //有时候、跑到这一句的时候、报空指针异常
meId = request.getParameter("meetResId");
} catch (Exception e) {
e.printStackTrace();
}在千万次的Debug中、会有那么一两次人品爆发、取得到它的值。

解决方案 »

  1.   

    模态框存在缓存,所以在使用OpenDialog弹出模式对话框的时候,注意后头带个参数,如:
    var now = new Date();
    var url = 'Xxxxxx?a='+'&now'+now.getTime();
      

  2.   


      就是这个鬼东西~~~它Y的刷新了、我的Request就取不到值!
      

  3.   

    <s:url action="admin_doFind" id="adminDoFind">
            <s:param name="account" value="#list.account"></s:param>
           </s:url>
           <font color="black"><a href="${adminDoFind}" onclick="" target="_bank">查看</a></font>
    我想用这种方法,将action请求返回的页面显示在弹出的窗体中,我想问在onclick中应该怎么写啊?请各位高手帮帮忙啊,急!!!!