将关联的值从弹出窗口传输到父窗口 JSP/Javascript

transfer associated values from popup to parent window jsp/Javascript

本文关键字:窗口 传输 JSP Javascript 关联      更新时间:2023-09-26

我有一个弹出窗口,其中包含数据库中的表中的数据,我可以像这样将值从弹出窗口传输到父窗口:

弹出数据:

             <%
                for (int i = 0; i < size; i++) {
                    ArrayList one = (ArrayList) all.get(i);
            %>
            <tr style="height:30px; padding:4px;">
                <td><div align="center"><a href="" onclick="getBranchValue(this)" id="cname"><%=(String) one.get(0)%></a></div></td>
                <td><div align="center"><%=(String) one.get(1)%></div></td>
                <td><div align="center"><%=(String) one.get(2)%></div></td>
            </tr>
            <% }%>

getBranchValue javascript:

 function getBranchValue(ths) {
                if (window.opener !== null && !window.opener.closed) {
                    var func = window.opener.document.getElementById("solid");
                    func.value = ths.innerHTML; //for innerhtml
                    window.close();
                }
            }

还需要将第二个数组中的数据传输到父窗口,因此我已按表修改为:

<a href="" onclick="getBranchValue(this,<%=(String) one.get(1)%>)" id="cname">

和我的职能:

function getBranchValue(ths, soldesc) {
                    if (window.opener !== null && !window.opener.closed) {
                        var func =     window.opener.document.getElementById("solid");
var desc = window.opener.document.getElementById("branchname");
func.value = ths.innerHTML; //for innerhtml
    desc.value = soldesc;
                        window.close();
                    }
                }

但是在点击时,它只是挂在那里。我该怎么办?

我认为您必须像这样编辑代码:

<a href="" onclick="getBranchValue(this,'<%=(String) one.get(1)%>')" id="cname">

(对必须传递给JS函数的字符串参数使用单引号)