我有两个网页,父网页.aspx和子网页.html。 在父页面上,我有JavaScript函数,可以通过window.showModalDialog调用子页面作为模态窗口。
function viewCourseModal(url) {
var sPars = SomeParameters();
var returnedValue = window.showModalDialog(url, "", sPars);
document.getElementById("modalReadyForTest").value = returnedValue;
return returnedValue;
}
在子页面上,我有以下内容:
<script LANGUAGE="JavaScript">
function closewindow() {
window.returnValue = "someValue";
window.close();
}
<input id="Button1" type="button" value="Ready For Test" onclick="closewindow()" />
因此,当我启动父窗口并调用子模态窗口时,单击按钮Button1后,带有“someValue”的参数将返回到父窗口(到modalReadyForTest控件)。
当我在同一个域上同时拥有父页面和子页面时,它可以正常工作。当我将它们放在不同的域上时,参数的值不会被传递,而是始终“未定义”。
有没有办法让不同域的模态窗口将参数值返回到父页面?那些跨域问题可以解决吗?还是我应该尝试完全不同的方法?
我非常感谢任何帮助。
谢谢,Anvar
答案 0 :(得分:1)
父页面:
<script>
function test(str) {
alert(str);
}
</script>
儿童页面:
<input id="Button1" type="button" value="Ready For Test" onclick="opener.test('my value here')" />