我有一个网页,其中iframe内有一个文本区域。我需要从其子页面JavaScript读取此textarea的值。目前,通过在JavaScript中使用window.parent.getelementbyID().value,我可以获取父页面中除iframe内的textarea之外的所有控件的值。
父页面中的框架ID和框架名称在运行时会更改,因此我们不能使用框架ID /框架名称作为引用。

最佳答案

如果您有HTML

<form name="formname" .... id="form-first">
    <iframe id="one" src="iframe2.html">
    </iframe>
</form>

和JavaScript
function iframeRef( frameRef ) {
    return frameRef.contentWindow
        ? frameRef.contentWindow.document
        : frameRef.contentDocument
}

var inside = iframeRef( document.getElementById('one') )
inside现在是对文档的引用,因此您可以根据iframe src中的内容执行getElementsByTagName('textarea')和任何您喜欢的操作。

07-25 23:02