0

我有以下两个 HTML 文档:

主.html

<html lang="eng">
<head>
  <title>JavaScript Example</title>
  <script type="text/javascript">

    var ExamId = "001A";

    function open_exam()
    {
      window.open("exam.html")
    }
  </script>
</head>
  <body>
    <input type=button value="Open Exam" onclick="open_exam()">
  </body>
</html>

考试.html

<html lang="eng">
<head>
  <title>JavaScript Example</title>
  <script type="text/javascript">
    function setParentInfo()
    {
        window.parent.document.ExamID = '001B';
    }
  </script>
</head>
  <body>
    <p>Welcome to the Exam!</p>
    <input type=button value="Set Parent Info" onclick="setParentInfo()">
  </body>
</html>

Main.html 通过输入按钮调出 Exam.html。从 Exam.html 内部我想更改父文档上的变量 ExamID(即:Main.html)。我正在尝试通过 JavaScript 函数执行此操作:setParentInfo()。

上面的代码不起作用。有人可以帮我想出正确的代码吗?

非常感谢!

4

2 回答 2

2

变量是在window对象上分配的,而不是在document对象上。

由于该值已设置,您可以改为读取现有值来验证它:

alert(window.parent.ExamId); // == "001A"
于 2012-07-08T04:46:46.137 回答
0

变量在父窗口中声明和分配,因此您可以从子窗口中获得引用。

您可以使用alert语句进行测试:

alert(window.parent.document.ExamId);

//output::001B
于 2012-07-08T04:53:54.410 回答