0

在子 html 文档中执行 javascript 函数的最佳方法是什么?

在我的父文档中,我有这个:

function validate() {
        debugger;
        var firstName = frm.FirstName.value;
        var lastName = frm.LastName.value;
        var email = frm.Email.value;

        if (!validateFirstName(firstName)) {
            return false;
        }
        if (!validateLastName(lastName)) {
            return false;
        }
        if (!validateEmail(email)) {
            return false;
        }

        var disp = window.open("results.html");
        disp.window.setData(firstName, lastName, email, frm.Comments);

        if (disp.confirm("Is this information correct?")) {
            disp.close();
        }
    }

在子文档(results.html)中,我有这个:

<script type="text/javascript">
    function setData(firstName, lastName, email, comments) {
        frm.FirstName.value = firstName;
        frm.LastName.value = lastName;
        frm.Email.value = email;
        frm.Comments.value = comments;
    }
</script>

这是行不通的。请告诉我如何仅使用普通的 javascript 和 html(没有 JQuery 等)来做到这一点。

谢谢

4

1 回答 1

1

您应该使用opener属性。它返回对创建窗口的窗口的引用。

使用 window.open() 打开窗口时,您可以使用目标窗口中的此属性来返回源(父)窗口的详细信息。

   <script type="text/javascript">
        function setData(firstName, lastName, email, comments) {
            opener.frm.FirstName.value = firstName;
            opener.frm.LastName.value = lastName;
            opener.frm.Email.value = email;
            opener.frm.Comments.value = comments;
        }
    </script>
于 2012-07-23T13:27:06.940 回答