zoukankan      html  css  js  c++  java
  • 页面A使用window.open打开页面B,然后取得B的返回值

    页面A的部分代码:
    <tr>
        <td><b><%= flabel.getProperty("domainadmin_adminid") %></b></td>
        <td>
        <span id='adminuid' ><%= db.getAdminUID() %></span>
        <input type="hidden"  name="ADMINUID" id="ADMINUID">
        <input type="hidden" name="beforeadminuid" value="<%= db.getAdminUID() %>">
        <input type="button" name="chkid" value="<%=flabel.getProperty("domainadmin_checkid") %>" onclick="window.open('useroptlist.jsp?usrtype=allusr&fspan=adminuid&fvalue=ADMINUID','popuppage','width=100,height=300,top=100,left=100, scrollbars=yes, resizable=yes');" >
        </td>
        <td><%=flabel.getProperty("domainadmin_msgadminid") %></td>
     </tr>

    页面B的部分代码:
    <script language="Javascript" >
    function sendValue(s){
     var p = s+ " " +"<input type='hidden' name='<%=fvalue%>' value='" + s + "' >"
     window.opener.document.getElementById('<%=fspan%>').innerHTML= p;
        window.opener.document.getElementById('<%=fvalue%>').value = s;
        window.close();
    }</script>
    <body class="body">
     <b><%=flabel.getProperty("select_s")%><br><%=flabel.getProperty("select_user")%></b>
    <%
     for(String uid= (String)un.readByFirst(); uid!=null; uid=(String)un.readByNext()){
     
    %>
      <a href="javascript:sendValue('<%= uid%>')" > <%=uid%></a><br> 
    <%
     }
    %>
    </body>

    注意:
    如果在IE下面,即使无:
    <input type="hidden"  name="ADMINUID" id="ADMINUID">
    window.opener.document.getElementById('<%=fvalue%>').value = s;
    在页面C调用:request.getParameter("ADMINUID")的时候,是有值的
    但是在FireFox中则不行,原因是: innerHTML是IE专有的,所以在FireFox下面无法正常使用.所以需要在页面B的返回返回代码中加入:window.opener.document.getElementById('<%=fvalue%>').value = s;
    但还有一些疑问:
    1)为什么使用window.opener.document.getElementById('<%=fspan%>').value = s,页面A就无法捕捉到 <span id='adminuid' ><%= db.getAdminUID() %></span>?
    2)如果使用window.opener.document.getElementByName('<%=fvalue%>').value=s,页面A也无法捕捉到ADMINUID的值呢?好奇怪呢!

    页面A:页面A
    页面B:页面B
    页面C:页面C

  • 相关阅读:
    CentOS6.2编译安装Nginx1.2.0
    mysql之主从复制篇
    CentOS6.2编译安装PHP5.4.0
    c# 多线程 编程
    QQ空间及邮箱验证码登录的校验方式及自动登录的解决方案
    C# 动态编译、动态执行、动态调试
    在Visual C#中用ListView显示数据记录
    推荐一个免费的HTTP抓包分析工具 Fiddler Web Debugger
    C#简繁体转换方法(Microsoft.Office.Interop.Word)
    C#读取字符串类型XML
  • 原文地址:https://www.cnblogs.com/kentyshang/p/764037.html
Copyright © 2011-2022 走看看