我有一个名为parent.html
. 从那里我调用一个模态对话框child.html
。我有一个链接按钮child.html
来关闭模式对话框。同时我想从 to 传递child.html
值parent.html
。
如何将值从子页面发送到父页面?
我有一个名为parent.html
. 从那里我调用一个模态对话框child.html
。我有一个链接按钮child.html
来关闭模式对话框。同时我想从 to 传递child.html
值parent.html
。
如何将值从子页面发送到父页面?
如果您的子页面 (child.html) 与父页面位于同一域,您可以从 child.html 调用父窗口的函数。
在子页面 (child.html) 中:
<a href="..." onclick="parent.callFromChildPage('ABC')">Button Title</a>
并且,在父页面 (parent.html) 中:
<script language="javascript">
function callFromChildPage(a_value){
alert("A value from child window is :" + a_value); // 'ABC'
}
</script>
而且,如果你可以在子页面(child.html)中使用jQuery,你可以直接设置父页面的元素如下:
<a href="..." onclick="$('#test', window.parent.document).html('ABC');">Button Title</a>
基本上在父页面中定义一个javascript函数,然后在子页面中简单地通过使用来调用这个函数opener
。
window.opener允许您引用打开文档的窗口对象。
子 HTML:
<html>
<head>
<script type="text/javascript">
$('a#child-link').click(function(e){
e.preventDefault();
var tmp = $('input#child-input').value();
window.opener.getChildVar(tmp);
});
</script>
</head>
<body>
<input type="text" name="child-text" id="child-input" value="test text" />
<a href="#" id="child-link">link</a>
</body>
</html>
父 HTML:
<html>
<head>
<script type="text/javascript">
function getChildVar(val) {
var received_val = val;
}
</script>
</head>
</html>