如何使用Javascript访问iframe元素?

时间:2009-09-21 04:12:04

标签: javascript dom iframe

我有一个网页,其中iframe中有texarea。我需要从其子页面javascript中读取此textarea的值。目前,通过在javascript中使用window.parent.getelementbyID().value,我可以获取父页面中除iframe中的textarea之外的所有控件的值。

我父页面中的帧ID和帧名称在运行时更改,因此我们不能使用帧ID /帧名称作为参考。

2 个答案:

答案 0 :(得分:68)

如果你有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')以及您喜欢的内容进行操作。

答案 1 :(得分:19)

使用jQuery,您可以使用contents()。例如:

var inside = $('#one').contents();