日期:2014-05-19  浏览次数:20673 次

【急急急】一个弹出新页面获取action中传递过来的值的问题,在线等
项目用的是ssh框架,这是一个表报统计模块
问题分两部分:
【1】.父页面提交查询条件(月份),然后传递给action查询相关数据,然后打开一个新的页面(需求要求必须要新打开一个页面),新打开的页面接收action中传递回来的值并展示出来,请问怎么实现?我是这样做的,在父页面里面把查询条件传递给要展示数据的子页面,然后子页面加载的时候把查询条件传递给action,子页面用window.open打开,sturts2的配置文件里的页面跳转就是跳转到这个子页面来的,可是这样有个问题,在FireBug下的html中能看得数据,但是在window.open打开的页面中却没有数据;
PS:对话框考虑过,不过那个不符合需求。
【2】.数据的展示如图,图片里的项目名称,事由1到7,以及子项目名称和数据都是动态生成的,这样的表格如何动态生成?主要的问题是迭代的时候项目名称只需要迭代一次,而其他的需要迭代很多次,这样的表格怎么生成?

跪求高手赐教,非常感谢

------解决方案--------------------
探讨
项目用的是ssh框架,这是一个表报统计模块
问题分两部分:
【1】.父页面提交查询条件(月份),然后传递给action查询相关数据,然后打开一个新的页面(需求要求必须要新打开一个页面),新打开的页面接收action中传递回来的值并展示出来,请问怎么实现?我是这样做的,在父页面里面把查询条件传递给要展示数据的子页面,然后子页面加载的时候把查询条件传递给action,子页面用window.open……

------解决方案--------------------
1: 我觉得 这个 应该 异步去获取数据 而不走STRUTS2的流程
2: 这个。。。

顺便说一下 你这个需求 设计 不如 直接查询后 弹出个EXCEL展示
------解决方案--------------------
探讨

现在的问题是我在FireBug中的HTML页面能看到数据显示在页面上,但是在window.open打开的那个实际的页面上看不到;交叉报表我会去看下的,非常感谢

------解决方案--------------------
redirect方式的话得用session了。
正常的话,forward方式下,request在window.open下的页面应该好用。

然后子页面加载的时候把查询条件传递给action,子页面用window.open打开??
LZ 上面这句话的代码能否帖下?
------解决方案--------------------
lz这要说那是提交月份后的数据没有返回到前台页面上来吗、?这要你要看看你跳转的方式是那种?

2个问题那个格式是excel还是页面形式的?如果是excel的那在后台代码迭代的时候就要控制合并表格了;若是以页面形式展示的话,在页面迭代的时候会有个cont属性记录迭代次数的,如何把那一<td>标签跨cont行就行了
------解决方案--------------------
1. 我觉得很简单,你用window.open打开的不就是父子页面吗?去古哥一下我记得有window.parent可以获取到父页面的方法,参数,并且可以调用父页面的方法执行,父页面也可以控制子页面的方法执行,这个古哥一下就可以找到了。
2. 动态生成表格的问题,其实也挺简单的,你说的项目名称只要生成一次。代码你改改,动态生成应该没啥问题的,以前我做动态生成考核表比你这个更复杂都可以做出来。
JScript code

<html>
<head>
<script>
function generatorTable(rows){
    /*var ss=[{"项目名称","子项目1","数据","数据","数据","数据","数据","数据","数据"},
            {"项目名称","子项目1","数据","数据","数据","数据","数据","数据","数据"},
            {"项目名称","子项目1","数据","数据","数据","数据","数据","数据","数据"},
            {"项目名称","子项目1","数据","数据","数据","数据","数据","数据","数据"},
            {"项目名称","子项目1","数据","数据","数据","数据","数据","数据","数据"},
            {"项目名称","子项目1","数据","数据","数据","数据","数据","数据","数据"},
            {"项目名称","子项目1","数据","数据","数据","数据","数据","数据","数据"},
            {"项目名称","子项目1","数据","数据","数据","数据","数据","数据","数据"}];*/
    var ss=["项目名称","子项目1","数据","数据","数据","数据","数据","数据","数据"];
    var tabs='<table id="tb1" border="1">';
    var trs='';
    for(var i=0;i<rows;i++){
        
        var tr='';
        tr+='<tr>';
        for(var j=0;j<ss.length;j++){
            if(i==0 && j==0){
                tr+='<td rowspan="'+rows+'">'+ss[j]+'</td>'
            }else{
                if(j!=0)
                tr+='<td>'+ss[j]+'</td>';
            }
        }
        alert(tr);
        trs+=tr;
    }
    tabs+=getHead();
    tabs+=trs;
    tabs+='</table>';