我有一个弹出窗口,其中包含来自数据库的表中的数据,我可以将弹出窗口中的值传输到父窗口,如下所示:
弹出数据:
<%
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();
}
}
但点击它只是挂在那里。我该怎么办?
答案 0 :(得分:1)
我认为你必须编辑这样的代码:
<a href="" onclick="getBranchValue(this,'<%=(String) one.get(1)%>')" id="cname">
(在字符串参数上使用单引号,必须传递给JS函数)