1

如何从父文档访问框架中包含的 HTML 元素?
我尝试过 window.frames、contentWindow 和 parent.frames,但我得到了各种错误。

这是父 HTML 文件的代码:

<html>
    <head>
        <title>Parent HTML file</title>
        <script type="text/javascript">
            alert(window.frames["frame1"].window.getElementsByTagName("input")[0].value);
            alert(document.getElementsByName("frame1").contentWindow);
            alert(parent.frames[0]document.getElementsByTagName("input")[0].value);
        </script>
    </head>
        <frameset cols="50%,50%">
            <frame src="frame1.html" name="frame1">
            <frame src="frame2.html" name="frame2">
                <noframes>
                    <body>
                        <p>Text</p>
                    </body>
                </noframes>
        </frameset>
</html>
4

1 回答 1

1

frames在您尝试引用它们时,集合或任何inputs 都不存在。你可以试试这个:

window.onload = function () {
    alert(window.frames["frame1"].document.getElementsByTagName("input")[0].value;
}

请注意,该frames集合包含window对象而不是frame/iframe元素。

于 2013-08-13T18:43:54.073 回答