我希望有人可以帮助我解决这个问题。
我要做的是将弹出窗口中的值返回到使用javascript启动它的父窗口。
我试过的是打电话(在各种网站上阅读)
window.opener.document.forms[0].textField.value = 'value'
但是虽然这不会产生任何错误,但它不会改变字段值。
我已经尝试在网上搜索这个解决方案,但有很多网站与谷歌上的“弹出返回值”相关,结果可追溯到2000年,许多人似乎互相冲突,所以我有点困惑。
理想情况下,我希望做的是让弹出窗口等待做出决定(是或否),并从父窗口返回到调用函数的true或false值。作为这个的原因,是我有一个表单使用onsubmit来调用javascript函数来确认天气继续没有。我正在使用一个对话框来返回一个真正的假值,但现在尝试用弹出窗口进行操作,这样我就可以包含图像和各种其他信息。
希望我已经解释得很好,有人可以帮我解决问题。
感谢您的时间。
答案 0 :(得分:4)
您可以从弹出窗口中引用打开弹出窗口的窗口...在此示例中,弹出窗口中的某些内容调用此函数(存在于弹出窗口中)传入“val”...
<script language="javascript">
function GetRowValue(val)
{
// hardcoded value used to minimize the code.
// ControlID can instead be passed as query string to the popup window
window.opener.document.getElementById("ctl00_ContentPlaceHolder1_TextBox2").value = val;
window.close();
}
</script>
答案 1 :(得分:2)
以下是Django管理员方法的解剖:Howto: javascript popup form returning value for select like Django admin for foreign keys。毫无疑问,它会变得更复杂,但最终这种技术可以帮助你。
答案 2 :(得分:1)
在父页面中使用它
var answer = window.open(<your page and other arguments>)
if (answer == 1)
do some thing
在子页面
window.returnValue = 1;
答案 3 :(得分:0)
尝试以下方法:
window.opener.document.getElementById("sizeId" + rn).value
大小以上的id将匹配您想要返回值的输入类型的父窗口id。