簡體   English   中英

使用JavaScript訪問iframe的字段

[英]Accessing fields of an iframe with javascript

我讀到以下內容應該可以使用javascript訪問iframe的內容:

document.getElementById("iframe_name").contentDocument

要么

document.getElementyById("iframe_name").contentWindow.document

但是,這些方法都不適合我。 我嘗試訪問的iframe是我創建的Google表單。 這是我為我的網站創建的注冊表格。 我想對用戶輸入的某些字段進行一些計算,然后在iframe之后顯示。 使用javascript訪問這些字段是我能想到的最好方法。 我為什么不能訪問它? 有沒有更好的方法可以實現我的目標? 謝謝。

您無法從服務器訪問google.com之類的外部頁面。

你所擁有的是正確的。 這是應該跨瀏覽器工作的更完整的序列:

var ifr=document.getElementById("iframe_name");
var doc=ifr.contentWindow||ifr.contentDocument;
if (doc.document) doc=doc.document;

更新:如另一個答案中所述,這不適用於所有域(例如,如果您嘗試從mydomain.com訪問google.com)。

我不知道您想做什么,但這也許會對您有所幫助。

我用它來重新加載框架

document.getElementById('graphFrame').contentDocument.location.reload(true);

您可以看到location屬性與iframe相關。

接下來,我要像這樣在Iframe中更改div。

top.frames["graphFrame"].document.getElementById('right_example');

因此,top.frames是頁面框架的數組。 然后我正在搜索一個ID為“ right_example”的dom元素,然后您可以執行任何操作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM