我想将父窗口中的变量传递给iframe html文档(子)。
示例:var myValue = 10;
想要将myValue
传递给子元素(隐藏输入)......
我该怎么做?
答案 0 :(得分:2)
您的问题在细节上有点吝啬,但原则上您可以找到IFRAME,例如使用document.getElementById()然后在其上使用contentDocument来获取其文档。再次使用getElementById(),您可以访问所需的子元素。
显然你必须给出两个元素“id”属性。
我认为IE不知道contentDocument,所以你可能不得不在那里使用contentWindow.document。
答案 1 :(得分:1)
我认为这应该可以帮到你:
答案 2 :(得分:1)
从父母的背景来看: window.frames包含您想要的框架。如果框架在同一个域中, 使用getElementById / getElementsByName找到隐藏的输入并为其赋值。
答案 3 :(得分:1)
继Steffen的回答之后,我今天早些时候做了类似的事。
if(document.getElementById("foo").document) { // IE
searchableContent = document.getElementById("foo").contentWindow.document;
}
if(document.getElementById("foo").contentDocument) { // Firefox, Chrome
searchableContent = document.getElementById("foo").contentDocument;
}
Object detection可能对你很感兴趣。
答案 4 :(得分:0)
我认为这应该有效。可能需要稍微调整一下。
var myIframe = document.getElementById('iFrameId');
if ( myIframe.contentDocument ) { // DOM
myIframe.contentDocument.getElementById('hiddenField').value = myValue;
} else if ( myIframe.contentWindow ) { // IE win
myIframe.contentWindow.document.getElementById('hiddenField').value = myValue;
}