struts中forward到frame框架中的解决方法

正常情况下struts中的forward是不能跳转到frame框架中的。在实验了一天后终于找到了解决的办法:利用ajax的返回值生成页面。

1.在前台使用ajax请求action:

     var par = "zczt="+zczt+"&sbmc="+sbmc+"&cpu="+cpu+"&xsk="+xsk+"&zb="+zb+"&nc="+nc
  +"&ypzx="+ypzx+"&ypzd="+ypzd+"&os="+os+"&gbrqqs="+gbrqqs+"&gbrqjs="+gbrqjs+"&r=" + Math.random();;    
              var url="operate/searchbfzc.do?"+par;

              useAjax(url);

 

 

 function useAjax(url){
     create();
     xmlHttpRequest.open("POST",url,true);
         //定义触发事件
     xmlHttpRequest.onreadystatechange=processresult;
     //发出异步请求
     xmlHttpRequest.send(null);
   }

 

2.在后台action中跳转到目标页面:

 request.setAttribute("searchResult", searchResult);
      return mapping.findForward("searchResult"); 

 

3.在跳转后在前台用ajax接受返回来的信息(该信息为网页的代码)

 

function processresult(){
    //异步交互完成,并且交互过程中没有发生异常
    if(xmlHttpRequest.readyState == 4 && xmlHttpRequest.status==200){
     //获取服务器返回的文本信息
     var mess = xmlHttpRequest.responseText;
    if(mess.length>50){
      document.write(mess);
     }else{
      window.alert(mess);
      window.location.href="zcbfH.jsp";
     }      
    }
   }

 

使用这句话来判断返回的为提示信息还是网页源码mess.length>50,一般的提示信息比较短可以根据自己的需要进行调整

主要是使用document.write(mess);这句话将返回的网页源码进行解析生成新的页面,而且看不出抖动。

else里的大家都能看懂就不说了。

附上源码(ajax的代码也是从网上抄的,具体谁的给忘了。莫怪罪。呵呵)希望对大家能有些许帮助:java的

 

js的

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值