2009-01-25 26 views
11

我試圖訪問表單及其元素。表單位於iframe中,訪問表單的JavaScript代碼位於主文檔中。訪問iframe中的表單

我不確定還有什麼我應該問的問題,所以請讓我知道如果我需要添加其他東西。

(形式和主頁在同一個域)

感謝

回答

14
var ifr = document.getElementById(yourIframeId); 
var ifrDoc = ifr.contentDocument || ifr.contentWindow.document; 
var theForm = ifrDoc.getElementById(yourFormId); 

或者你可以在那臺變量parent到窗體框架的一些代碼,但我不會」不要相信那種方法。

+1

未捕獲拋出:DOMException:無法讀取「HTMLIFrameElement」的「contentDocument」屬性:阻止了原產框架,它不會爲兩個不同的領域工作。 – 2017-02-21 15:36:53

+0

你有什麼建議可以使這項工作的跨域也? – 2017-02-21 15:37:52

3

如果您的iframe具有name屬性,則可以將其用作窗口名稱。如果框架的名稱是「myframe」:

myframe.document.getElementById("myform") // gives you the form element