a.jsp中打开b.jsp,b.jsp处理会调用c.jsp,c.jsp如何将参数传递给a.jsp页面上?直接将结果反馈给正在编辑的页面,而不是通过url方式
也就是说A页面一直是打开状态,b和c都是动态处理页面。

解决方案 »

  1.   

    A页面不需要传递参数给B,或者是说传递的参数和返回的没关系,只需要C传递回来给A页面赋值就行了。
      

  2.   

    打开用的是window.open的话:
    var win = window.open() A访问B,C 用 win.xxx, xxx是DOM引用, B,C访问A用 parent.xxx
    打开用的是模态对话框的话: 将self作为参数传入showModalDialog, B中用dialogArguments,就可访问父页面的值了
      

  3.   

    楼上的hookee,能具体点说明吗?我是想用模态方式打开,问题是b到c保存的时候是form提交的,这样模态就会新建立一个窗口,同时数值不能返回,因为c窗口是最终要返回一个id给A窗口的,这个数值作为以后修改的参数,否则我就不知道是那个是新建的那个是修改的数据了。
      

  4.   

    可以明确的告诉你,基于HTML和IE的原理,传不回来。除非使用cookie(有意思吗?没意思。)用ajax才是王道。
      

  5.   


    <input name="pp" type="text" id="pp">
    <div id=1 title="选择品牌" onclick="classname('pp');"><img src="img050606/b.gif"/></div>
     <script laguage="javescript">
    var url="classname.jsp?classname=1";
    var w=showModalDialog(url,window,"dialogWidth:350px;dialogHeight:230px;help:no;scroll:no;status:no;");//这里W就是返回所获得的值。
    document.all.pp.value=w;
    //document.getElementById("pp").value=w;//这里就是把返回的值填写到输入框里。
    </script>  <body><div onClick="setvalue('分类1');">分类1</div>
    <div onClick="setvalue('分类2');">分类2</div>
    <div onClick="setvalue('分类3');">分类3</div>
    <div onClick="setvalue('分类4');">分类4</div>
    <div onClick="setvalue('分类5');">分类5</div>
    <script laguage="javescript">
    function setvalue(setv){
     window.returnValue = setv;//返回的值
     window.close();
    }
    </script>
      </body>这都已经实现了大概70%了,就是我想从C页面传递,应该可以吧?不要什么都用ajax吧,没那个必要吧
      

  6.   

    可以是使用iframe,不过AJAX确实是王道,可以用JQUERY的库,在A.JSP中编写  $.get('c.jsp',function(data){ $('#container').html(data)});
      

  7.   

    showModalDialog的第二参数可以是
    function(){
        document//这里就是a页面的
    }
    在b页面js用
    var a_func=window.arguments
    a_func()给a页面附值。同理,你可以打开c,然后执行b的脚本function