struts不能实现吗?
感觉这种需求应该很常见吧,连这种都不能实现,那struts不就是垃圾了吗?

解决方案 »

  1.   

    也可以在你的FORM里面加target属性,然后在STRUS返回错误时调用window.close()
      

  2.   

    action 成功后forward到一个页面啊,这时候,这个页面根据action传递的参数,决定是否运行打开窗口的命令
      

  3.   


    是不是这个意思:你的意思是不是无论是否check成功与否都返回到本画面,然后触发类似onload这种方法,然后action里传个参数什么的给页面上的隐藏变量。再用onload对应的js来操作window.open?
      

  4.   

    最好的办法是用Ajax去实现  或者7楼的方法也行  
      

  5.   

    传说中7楼的方法到底是什么意思,我都没听明白。
    问题1:forward到哪个画面
    问题2:传个参数控制是什么概念?是打算在javascript里面用window.open来实现开窗口,还是在服务器端有开新窗口的参数,直接设一下就可以了?
      

  6.   

    同意,最好用ajax,用7楼的方式,会造成A页面转到了另外一个页面,这样不太符合lz的想法,如果lz不想用ajax,也可以在你的页面内镶嵌一个iframe,你在iframe中验证是否需要弹出B页面
      

  7.   

    用AJAX框架可以完美的实现这个功能,用AJAX去调用后台,再根据返回值来在页面确定是否打开新窗口
      

  8.   

    用ajax简单点如果没用ajax
    应该在 action的execute方法中 ,你先 response.write("<script language=\"javascript\">window.location.href=\"a.jsp\"</script>");
    然后 return null;
    就可以了 让response一段 javascript的弹出窗口代码给 浏览器就好了
      

  9.   

    选用 ajax是个方便的方法  如果不用ajax可以这样做 
    在 action的 execute后面,也就是你业务check之后 如果check通过 记下来这样写response.write("<script language=\"javascript\">window.open('actionId.do','_blank');</script>");
    return null;就好了 记得是 return null;